From 1dafbea53825ac71a12fba9009c01b5176e766d2 Mon Sep 17 00:00:00 2001 From: Mishu Agopian Date: Mon, 10 Feb 2025 17:30:52 -0300 Subject: [PATCH] feat: purchase bundler (#114) * feat: purchase bundler addresses * chore: bump and docs --- docs/0.17.2/.nojekyll | 1 + docs/0.17.2/assets/highlight.css | 85 + docs/0.17.2/assets/main.js | 58 + docs/0.17.2/assets/search.js | 1 + docs/0.17.2/assets/style.css | 1367 +++++++++++++++++ docs/0.17.2/classes/Gondi.html | 1249 +++++++++++++++ docs/0.17.2/classes/Internal.AllV4.html | 551 +++++++ docs/0.17.2/classes/Internal.AllV5.html | 557 +++++++ docs/0.17.2/classes/Internal.AllV6.html | 611 ++++++++ docs/0.17.2/classes/Internal.Api.html | 1177 ++++++++++++++ .../0.17.2/classes/Internal.BaseContract.html | 342 +++++ docs/0.17.2/classes/Internal.Contracts.html | 494 ++++++ docs/0.17.2/classes/Internal.MslV4.html | 1185 ++++++++++++++ docs/0.17.2/classes/Internal.MslV5.html | 1333 ++++++++++++++++ docs/0.17.2/classes/Internal.MslV6.html | 1330 ++++++++++++++++ .../classes/Internal.OldERC721Wrapper.html | 510 ++++++ .../classes/Internal.PurchaseBundler.html | 630 ++++++++ docs/0.17.2/classes/Internal.UserVaultV5.html | 710 +++++++++ docs/0.17.2/classes/Internal.UserVaultV6.html | 823 ++++++++++ docs/0.17.2/enums/Internal.LoanSortField.html | 278 ++++ docs/0.17.2/enums/LoanStatusType.html | 105 ++ docs/0.17.2/enums/MarketplaceEnum.html | 70 + docs/0.17.2/enums/OfferStatus.html | 98 ++ docs/0.17.2/enums/OffersSortField.html | 161 ++ docs/0.17.2/enums/Ordering.html | 70 + docs/0.17.2/enums/TokenStandardType.html | 77 + docs/0.17.2/index.html | 86 ++ .../interfaces/Internal.EmitLoanArgs.html | 242 +++ .../interfaces/Internal.GondiProps.html | 215 +++ .../interfaces/Types.ListLoansProps.html | 147 ++ docs/0.17.2/modules.html | 66 + docs/0.17.2/modules/Internal.html | 329 ++++ docs/0.17.2/modules/Types.html | 80 + docs/0.17.2/types/Internal.Activity.html | 190 +++ docs/0.17.2/types/Internal.Asset.html | 196 +++ docs/0.17.2/types/Internal.Auction-1.html | 208 +++ docs/0.17.2/types/Internal.Auction.html | 181 +++ docs/0.17.2/types/Internal.AuctionV5.html | 181 +++ docs/0.17.2/types/Internal.AuctionV6.html | 181 +++ docs/0.17.2/types/Internal.Bid.html | 202 +++ .../types/Internal.BurnAndWithdrawArgs.html | 196 +++ docs/0.17.2/types/Internal.Collection.html | 224 +++ ...rnal.CollectionByContractAddressQuery.html | 188 +++ .../Internal.CollectionIdBySlugQuery.html | 188 +++ .../types/Internal.CollectionOffer.html | 253 +++ .../types/Internal.CollectionOfferInput.html | 216 +++ .../Internal.CollectionOfferStatistics.html | 190 +++ .../Internal.CollectionSignedOfferInput.html | 222 +++ .../types/Internal.CollectionStatistics.html | 244 +++ ...l.CollectionsIdByContractAddressQuery.html | 188 +++ .../types/Internal.CollectionsQuery.html | 202 +++ docs/0.17.2/types/Internal.ContractData.html | 198 +++ .../types/Internal.CreateVaultArgs.html | 192 +++ docs/0.17.2/types/Internal.Currency.html | 198 +++ .../0.17.2/types/Internal.CurrencyAmount.html | 190 +++ .../types/Internal.DepositERC1155sArgs.html | 192 +++ .../types/Internal.DepositERC721sArgs.html | 181 +++ .../types/Internal.Erc721Or1155ABI.html | 181 +++ docs/0.17.2/types/Internal.Exact.html | 186 +++ ...l.GenerateCollectionOfferHashMutation.html | 215 +++ ...enerateRenegotiationOfferHashMutation.html | 210 +++ ...al.GenerateSingleNftOfferHashMutation.html | 212 +++ docs/0.17.2/types/Internal.HexString.html | 181 +++ .../types/Internal.HideOfferMutation.html | 188 +++ .../types/Internal.HideOrderMutation.html | 188 +++ ...ternal.HideRenegotiationOfferMutation.html | 193 +++ docs/0.17.2/types/Internal.InputMaybe.html | 186 +++ docs/0.17.2/types/Internal.Interval.html | 188 +++ docs/0.17.2/types/Internal.LinkedWallets.html | 194 +++ .../types/Internal.ListListingsQuery.html | 202 +++ .../0.17.2/types/Internal.ListLoansQuery.html | 204 +++ .../types/Internal.ListNftMutation.html | 193 +++ .../types/Internal.ListOffersQuery.html | 202 +++ docs/0.17.2/types/Internal.Listing.html | 202 +++ docs/0.17.2/types/Internal.Loan.html | 227 +++ docs/0.17.2/types/Internal.LoanActivity.html | 206 +++ docs/0.17.2/types/Internal.LoanEvent.html | 194 +++ docs/0.17.2/types/Internal.LoanRepaid.html | 210 +++ docs/0.17.2/types/Internal.LoanSortInput.html | 188 +++ .../types/Internal.LoanToMslLoanType.html | 181 +++ docs/0.17.2/types/Internal.LoanV4.html | 186 +++ docs/0.17.2/types/Internal.LoanV5.html | 188 +++ docs/0.17.2/types/Internal.LoanV6.html | 190 +++ docs/0.17.2/types/Internal.MakeOfferType.html | 181 +++ .../Internal.MakeRefinanceOfferProps.html | 188 +++ .../types/Internal.MaxSeniorRepaymentArg.html | 186 +++ docs/0.17.2/types/Internal.Maybe.html | 186 +++ .../types/Internal.MultiSourceLoan.html | 253 +++ .../Internal.MultiSourceLoanHistory.html | 212 +++ docs/0.17.2/types/Internal.Nft.html | 232 +++ ...NftIdByContractAddressAndTokenIdQuery.html | 188 +++ .../Internal.NftIdBySlugTokenIdQuery.html | 188 +++ docs/0.17.2/types/Internal.NftOrderInput.html | 206 +++ docs/0.17.2/types/Internal.NftStatistics.html | 194 +++ docs/0.17.2/types/Internal.Node.html | 186 +++ docs/0.17.2/types/Internal.Offer.html | 247 +++ .../Internal.OfferFromExecutionOffer.html | 181 +++ .../0.17.2/types/Internal.OfferValidator.html | 194 +++ .../types/Internal.OfferValidatorInput.html | 188 +++ .../types/Internal.OffersSortInput.html | 192 +++ docs/0.17.2/types/Internal.Optional.html | 188 +++ .../types/Internal.OptionalNullable.html | 188 +++ docs/0.17.2/types/Internal.Order.html | 226 +++ .../0.17.2/types/Internal.OwnedNftsQuery.html | 202 +++ .../types/Internal.PlaceBidAbiTypeV5.html | 181 +++ .../types/Internal.PlaceBidAbiTypeV6.html | 181 +++ docs/0.17.2/types/Internal.Props.html | 188 +++ ...rnal.PublishSellAndRepayOrderMutation.html | 188 +++ .../Internal.RenegotiationOfferInput.html | 210 +++ .../types/Internal.RenegotiationRequest.html | 200 +++ .../0.17.2/types/Internal.RepayAbiTypeV4.html | 181 +++ .../0.17.2/types/Internal.RepayAbiTypeV5.html | 181 +++ .../0.17.2/types/Internal.RepayAbiTypeV6.html | 181 +++ docs/0.17.2/types/Internal.Sale.html | 200 +++ .../Internal.SaveCollectionOfferMutation.html | 207 +++ ...ternal.SaveRenegotiationOfferMutation.html | 195 +++ .../Internal.SaveSingleNftOfferMutation.html | 204 +++ docs/0.17.2/types/Internal.Scalars.html | 213 +++ .../types/Internal.SellAndRepayOrder.html | 242 +++ .../types/Internal.ShowOrderMutation.html | 188 +++ docs/0.17.2/types/Internal.Signature.html | 181 +++ ...nternal.SignedRenegotiationOfferInput.html | 216 +++ .../types/Internal.SingleNftOfferInput.html | 216 +++ .../Internal.SingleNftSignedOfferInput.html | 222 +++ docs/0.17.2/types/Internal.Source.html | 228 +++ docs/0.17.2/types/Internal.SourceHistory.html | 206 +++ .../types/Internal.StatByCollection.html | 190 +++ docs/0.17.2/types/Internal.TermsFilter.html | 198 +++ docs/0.17.2/types/Internal.TopUpRequest.html | 198 +++ docs/0.17.2/types/Internal.Trait.html | 194 +++ .../types/Internal.UnhideOfferMutation.html | 188 +++ ...rnal.UnhideRenegotiationOfferMutation.html | 193 +++ .../types/Internal.UnlistNftMutation.html | 193 +++ docs/0.17.2/types/Internal.User.html | 226 +++ docs/0.17.2/types/Internal.UserFilter.html | 188 +++ .../0.17.2/types/Internal.UserStatistics.html | 298 ++++ docs/0.17.2/types/Internal.Wallet.html | 181 +++ .../types/Internal.wrapOldERC721Args.html | 196 +++ docs/0.17.2/types/Types.CollectionOffer.html | 67 + .../types/Types.CollectionOfferInput.html | 60 + .../0.17.2/types/Types.ListListingsProps.html | 73 + docs/0.17.2/types/Types.ListOffersProps.html | 86 ++ docs/0.17.2/types/Types.NftStandard.html | 60 + .../types/Types.RenegotiationInput.html | 60 + .../types/Types.RenegotiationOffer.html | 65 + docs/0.17.2/types/Types.SingleNftOffer.html | 65 + .../types/Types.SingleNftOfferInput.html | 60 + .../types/Types.UnsignedCollectionOffer.html | 65 + .../Types.UnsignedRenegotiationOffer.html | 60 + .../types/Types.UnsignedSingleNftOffer.html | 67 + docs/0.17.2/variables/FULFILLED.html | 43 + .../Internal.auctionLoanLiquidatorABI-1.html | 181 +++ .../Internal.auctionLoanLiquidatorABI.html | 181 +++ .../Internal.auctionLoanLiquidatorAbi-2.html | 181 +++ ...al.auctionWithBuyoutLoanLiquidatorAbi.html | 181 +++ .../0.17.2/variables/Internal.erc1155Abi.html | 181 +++ docs/0.17.2/variables/Internal.erc721ABI.html | 181 +++ .../Internal.multiSourceLoanABI-1.html | 181 +++ .../Internal.multiSourceLoanABI.html | 181 +++ .../Internal.multiSourceLoanAbi-2.html | 181 +++ .../Internal.oldErc721WrapperAbi.html | 181 +++ .../Internal.purchaseBundlerAbi.html | 181 +++ .../variables/Internal.userVaultABI.html | 181 +++ .../variables/Internal.userVaultAbi-1.html | 181 +++ docs/0.17.2/variables/REJECTED.html | 43 + docs/lts/classes/Gondi.html | 138 +- docs/lts/classes/Internal.AllV4.html | 36 +- docs/lts/classes/Internal.AllV5.html | 34 +- docs/lts/classes/Internal.AllV6.html | 34 +- docs/lts/classes/Internal.Api.html | 114 +- docs/lts/classes/Internal.BaseContract.html | 26 +- docs/lts/classes/Internal.Contracts.html | 56 +- docs/lts/classes/Internal.MslV4.html | 68 +- docs/lts/classes/Internal.MslV5.html | 68 +- docs/lts/classes/Internal.MslV6.html | 68 +- .../classes/Internal.OldERC721Wrapper.html | 30 +- .../lts/classes/Internal.PurchaseBundler.html | 32 +- docs/lts/classes/Internal.UserVaultV5.html | 34 +- docs/lts/classes/Internal.UserVaultV6.html | 34 +- docs/lts/enums/Internal.LoanSortField.html | 32 +- docs/lts/enums/LoanStatusType.html | 22 +- docs/lts/enums/MarketplaceEnum.html | 12 +- docs/lts/enums/OfferStatus.html | 20 +- docs/lts/enums/OffersSortField.html | 38 +- docs/lts/enums/Ordering.html | 12 +- docs/lts/enums/TokenStandardType.html | 14 +- docs/lts/index.html | 8 +- .../lts/interfaces/Internal.EmitLoanArgs.html | 18 +- docs/lts/interfaces/Internal.GondiProps.html | 12 +- docs/lts/interfaces/Types.ListLoansProps.html | 28 +- docs/lts/modules.html | 8 +- docs/lts/modules/Internal.html | 6 +- docs/lts/modules/Types.html | 8 +- docs/lts/types/Internal.Activity.html | 8 +- docs/lts/types/Internal.Asset.html | 8 +- docs/lts/types/Internal.Auction-1.html | 8 +- docs/lts/types/Internal.Auction.html | 8 +- docs/lts/types/Internal.AuctionV5.html | 8 +- docs/lts/types/Internal.AuctionV6.html | 8 +- docs/lts/types/Internal.Bid.html | 8 +- .../types/Internal.BurnAndWithdrawArgs.html | 8 +- docs/lts/types/Internal.Collection.html | 8 +- ...rnal.CollectionByContractAddressQuery.html | 8 +- .../Internal.CollectionIdBySlugQuery.html | 8 +- docs/lts/types/Internal.CollectionOffer.html | 8 +- .../types/Internal.CollectionOfferInput.html | 8 +- .../Internal.CollectionOfferStatistics.html | 8 +- .../Internal.CollectionSignedOfferInput.html | 8 +- .../types/Internal.CollectionStatistics.html | 8 +- ...l.CollectionsIdByContractAddressQuery.html | 8 +- docs/lts/types/Internal.CollectionsQuery.html | 8 +- docs/lts/types/Internal.ContractData.html | 8 +- docs/lts/types/Internal.CreateVaultArgs.html | 8 +- docs/lts/types/Internal.Currency.html | 8 +- docs/lts/types/Internal.CurrencyAmount.html | 8 +- .../types/Internal.DepositERC1155sArgs.html | 8 +- .../types/Internal.DepositERC721sArgs.html | 8 +- docs/lts/types/Internal.Erc721Or1155ABI.html | 8 +- docs/lts/types/Internal.Exact.html | 8 +- ...l.GenerateCollectionOfferHashMutation.html | 8 +- ...enerateRenegotiationOfferHashMutation.html | 8 +- ...al.GenerateSingleNftOfferHashMutation.html | 8 +- docs/lts/types/Internal.HexString.html | 8 +- .../lts/types/Internal.HideOfferMutation.html | 8 +- .../lts/types/Internal.HideOrderMutation.html | 8 +- ...ternal.HideRenegotiationOfferMutation.html | 8 +- docs/lts/types/Internal.InputMaybe.html | 8 +- docs/lts/types/Internal.Interval.html | 8 +- docs/lts/types/Internal.LinkedWallets.html | 8 +- .../lts/types/Internal.ListListingsQuery.html | 8 +- docs/lts/types/Internal.ListLoansQuery.html | 8 +- docs/lts/types/Internal.ListNftMutation.html | 8 +- docs/lts/types/Internal.ListOffersQuery.html | 8 +- docs/lts/types/Internal.Listing.html | 8 +- docs/lts/types/Internal.Loan.html | 8 +- docs/lts/types/Internal.LoanActivity.html | 8 +- docs/lts/types/Internal.LoanEvent.html | 8 +- docs/lts/types/Internal.LoanRepaid.html | 8 +- docs/lts/types/Internal.LoanSortInput.html | 8 +- .../lts/types/Internal.LoanToMslLoanType.html | 8 +- docs/lts/types/Internal.LoanV4.html | 8 +- docs/lts/types/Internal.LoanV5.html | 8 +- docs/lts/types/Internal.LoanV6.html | 8 +- docs/lts/types/Internal.MakeOfferType.html | 8 +- .../Internal.MakeRefinanceOfferProps.html | 8 +- .../types/Internal.MaxSeniorRepaymentArg.html | 8 +- docs/lts/types/Internal.Maybe.html | 8 +- docs/lts/types/Internal.MultiSourceLoan.html | 8 +- .../Internal.MultiSourceLoanHistory.html | 8 +- docs/lts/types/Internal.Nft.html | 8 +- ...NftIdByContractAddressAndTokenIdQuery.html | 8 +- .../Internal.NftIdBySlugTokenIdQuery.html | 8 +- docs/lts/types/Internal.NftOrderInput.html | 8 +- docs/lts/types/Internal.NftStatistics.html | 8 +- docs/lts/types/Internal.Node.html | 8 +- docs/lts/types/Internal.Offer.html | 8 +- .../Internal.OfferFromExecutionOffer.html | 8 +- docs/lts/types/Internal.OfferValidator.html | 8 +- .../types/Internal.OfferValidatorInput.html | 8 +- docs/lts/types/Internal.OffersSortInput.html | 8 +- docs/lts/types/Internal.Optional.html | 8 +- docs/lts/types/Internal.OptionalNullable.html | 8 +- docs/lts/types/Internal.Order.html | 8 +- docs/lts/types/Internal.OwnedNftsQuery.html | 8 +- .../lts/types/Internal.PlaceBidAbiTypeV5.html | 8 +- .../lts/types/Internal.PlaceBidAbiTypeV6.html | 8 +- docs/lts/types/Internal.Props.html | 8 +- ...rnal.PublishSellAndRepayOrderMutation.html | 8 +- .../Internal.RenegotiationOfferInput.html | 8 +- .../types/Internal.RenegotiationRequest.html | 8 +- docs/lts/types/Internal.RepayAbiTypeV4.html | 8 +- docs/lts/types/Internal.RepayAbiTypeV5.html | 8 +- docs/lts/types/Internal.RepayAbiTypeV6.html | 8 +- docs/lts/types/Internal.Sale.html | 8 +- .../Internal.SaveCollectionOfferMutation.html | 8 +- ...ternal.SaveRenegotiationOfferMutation.html | 8 +- .../Internal.SaveSingleNftOfferMutation.html | 8 +- docs/lts/types/Internal.Scalars.html | 8 +- .../lts/types/Internal.SellAndRepayOrder.html | 8 +- .../lts/types/Internal.ShowOrderMutation.html | 8 +- docs/lts/types/Internal.Signature.html | 8 +- ...nternal.SignedRenegotiationOfferInput.html | 8 +- .../types/Internal.SingleNftOfferInput.html | 8 +- .../Internal.SingleNftSignedOfferInput.html | 8 +- docs/lts/types/Internal.Source.html | 8 +- docs/lts/types/Internal.SourceHistory.html | 8 +- docs/lts/types/Internal.StatByCollection.html | 8 +- docs/lts/types/Internal.TermsFilter.html | 8 +- docs/lts/types/Internal.TopUpRequest.html | 8 +- docs/lts/types/Internal.Trait.html | 8 +- .../types/Internal.UnhideOfferMutation.html | 8 +- ...rnal.UnhideRenegotiationOfferMutation.html | 8 +- .../lts/types/Internal.UnlistNftMutation.html | 8 +- docs/lts/types/Internal.User.html | 8 +- docs/lts/types/Internal.UserFilter.html | 8 +- docs/lts/types/Internal.UserStatistics.html | 8 +- docs/lts/types/Internal.Wallet.html | 8 +- .../lts/types/Internal.wrapOldERC721Args.html | 8 +- docs/lts/types/Types.CollectionOffer.html | 8 +- .../lts/types/Types.CollectionOfferInput.html | 8 +- docs/lts/types/Types.ListListingsProps.html | 8 +- docs/lts/types/Types.ListOffersProps.html | 8 +- docs/lts/types/Types.NftStandard.html | 8 +- docs/lts/types/Types.RenegotiationInput.html | 8 +- docs/lts/types/Types.RenegotiationOffer.html | 8 +- docs/lts/types/Types.SingleNftOffer.html | 8 +- docs/lts/types/Types.SingleNftOfferInput.html | 8 +- .../types/Types.UnsignedCollectionOffer.html | 8 +- .../Types.UnsignedRenegotiationOffer.html | 8 +- .../types/Types.UnsignedSingleNftOffer.html | 8 +- docs/lts/variables/FULFILLED.html | 8 +- .../Internal.auctionLoanLiquidatorABI-1.html | 8 +- .../Internal.auctionLoanLiquidatorABI.html | 8 +- .../Internal.auctionLoanLiquidatorAbi-2.html | 8 +- ...al.auctionWithBuyoutLoanLiquidatorAbi.html | 8 +- docs/lts/variables/Internal.erc1155Abi.html | 8 +- docs/lts/variables/Internal.erc721ABI.html | 8 +- .../Internal.multiSourceLoanABI-1.html | 8 +- .../Internal.multiSourceLoanABI.html | 8 +- .../Internal.multiSourceLoanAbi-2.html | 8 +- .../Internal.oldErc721WrapperAbi.html | 8 +- .../Internal.purchaseBundlerAbi.html | 8 +- docs/lts/variables/Internal.userVaultABI.html | 8 +- .../variables/Internal.userVaultAbi-1.html | 8 +- docs/lts/variables/REJECTED.html | 8 +- package.json | 2 +- src/deploys.ts | 4 +- 327 files changed, 40255 insertions(+), 1036 deletions(-) create mode 100644 docs/0.17.2/.nojekyll create mode 100644 docs/0.17.2/assets/highlight.css create mode 100644 docs/0.17.2/assets/main.js create mode 100644 docs/0.17.2/assets/search.js create mode 100644 docs/0.17.2/assets/style.css create mode 100644 docs/0.17.2/classes/Gondi.html create mode 100644 docs/0.17.2/classes/Internal.AllV4.html create mode 100644 docs/0.17.2/classes/Internal.AllV5.html create mode 100644 docs/0.17.2/classes/Internal.AllV6.html create mode 100644 docs/0.17.2/classes/Internal.Api.html create mode 100644 docs/0.17.2/classes/Internal.BaseContract.html create mode 100644 docs/0.17.2/classes/Internal.Contracts.html create mode 100644 docs/0.17.2/classes/Internal.MslV4.html create mode 100644 docs/0.17.2/classes/Internal.MslV5.html create mode 100644 docs/0.17.2/classes/Internal.MslV6.html create mode 100644 docs/0.17.2/classes/Internal.OldERC721Wrapper.html create mode 100644 docs/0.17.2/classes/Internal.PurchaseBundler.html create mode 100644 docs/0.17.2/classes/Internal.UserVaultV5.html create mode 100644 docs/0.17.2/classes/Internal.UserVaultV6.html create mode 100644 docs/0.17.2/enums/Internal.LoanSortField.html create mode 100644 docs/0.17.2/enums/LoanStatusType.html create mode 100644 docs/0.17.2/enums/MarketplaceEnum.html create mode 100644 docs/0.17.2/enums/OfferStatus.html create mode 100644 docs/0.17.2/enums/OffersSortField.html create mode 100644 docs/0.17.2/enums/Ordering.html create mode 100644 docs/0.17.2/enums/TokenStandardType.html create mode 100644 docs/0.17.2/index.html create mode 100644 docs/0.17.2/interfaces/Internal.EmitLoanArgs.html create mode 100644 docs/0.17.2/interfaces/Internal.GondiProps.html create mode 100644 docs/0.17.2/interfaces/Types.ListLoansProps.html create mode 100644 docs/0.17.2/modules.html create mode 100644 docs/0.17.2/modules/Internal.html create mode 100644 docs/0.17.2/modules/Types.html create mode 100644 docs/0.17.2/types/Internal.Activity.html create mode 100644 docs/0.17.2/types/Internal.Asset.html create mode 100644 docs/0.17.2/types/Internal.Auction-1.html create mode 100644 docs/0.17.2/types/Internal.Auction.html create mode 100644 docs/0.17.2/types/Internal.AuctionV5.html create mode 100644 docs/0.17.2/types/Internal.AuctionV6.html create mode 100644 docs/0.17.2/types/Internal.Bid.html create mode 100644 docs/0.17.2/types/Internal.BurnAndWithdrawArgs.html create mode 100644 docs/0.17.2/types/Internal.Collection.html create mode 100644 docs/0.17.2/types/Internal.CollectionByContractAddressQuery.html create mode 100644 docs/0.17.2/types/Internal.CollectionIdBySlugQuery.html create mode 100644 docs/0.17.2/types/Internal.CollectionOffer.html create mode 100644 docs/0.17.2/types/Internal.CollectionOfferInput.html create mode 100644 docs/0.17.2/types/Internal.CollectionOfferStatistics.html create mode 100644 docs/0.17.2/types/Internal.CollectionSignedOfferInput.html create mode 100644 docs/0.17.2/types/Internal.CollectionStatistics.html create mode 100644 docs/0.17.2/types/Internal.CollectionsIdByContractAddressQuery.html create mode 100644 docs/0.17.2/types/Internal.CollectionsQuery.html create mode 100644 docs/0.17.2/types/Internal.ContractData.html create mode 100644 docs/0.17.2/types/Internal.CreateVaultArgs.html create mode 100644 docs/0.17.2/types/Internal.Currency.html create mode 100644 docs/0.17.2/types/Internal.CurrencyAmount.html create mode 100644 docs/0.17.2/types/Internal.DepositERC1155sArgs.html create mode 100644 docs/0.17.2/types/Internal.DepositERC721sArgs.html create mode 100644 docs/0.17.2/types/Internal.Erc721Or1155ABI.html create mode 100644 docs/0.17.2/types/Internal.Exact.html create mode 100644 docs/0.17.2/types/Internal.GenerateCollectionOfferHashMutation.html create mode 100644 docs/0.17.2/types/Internal.GenerateRenegotiationOfferHashMutation.html create mode 100644 docs/0.17.2/types/Internal.GenerateSingleNftOfferHashMutation.html create mode 100644 docs/0.17.2/types/Internal.HexString.html create mode 100644 docs/0.17.2/types/Internal.HideOfferMutation.html create mode 100644 docs/0.17.2/types/Internal.HideOrderMutation.html create mode 100644 docs/0.17.2/types/Internal.HideRenegotiationOfferMutation.html create mode 100644 docs/0.17.2/types/Internal.InputMaybe.html create mode 100644 docs/0.17.2/types/Internal.Interval.html create mode 100644 docs/0.17.2/types/Internal.LinkedWallets.html create mode 100644 docs/0.17.2/types/Internal.ListListingsQuery.html create mode 100644 docs/0.17.2/types/Internal.ListLoansQuery.html create mode 100644 docs/0.17.2/types/Internal.ListNftMutation.html create mode 100644 docs/0.17.2/types/Internal.ListOffersQuery.html create mode 100644 docs/0.17.2/types/Internal.Listing.html create mode 100644 docs/0.17.2/types/Internal.Loan.html create mode 100644 docs/0.17.2/types/Internal.LoanActivity.html create mode 100644 docs/0.17.2/types/Internal.LoanEvent.html create mode 100644 docs/0.17.2/types/Internal.LoanRepaid.html create mode 100644 docs/0.17.2/types/Internal.LoanSortInput.html create mode 100644 docs/0.17.2/types/Internal.LoanToMslLoanType.html create mode 100644 docs/0.17.2/types/Internal.LoanV4.html create mode 100644 docs/0.17.2/types/Internal.LoanV5.html create mode 100644 docs/0.17.2/types/Internal.LoanV6.html create mode 100644 docs/0.17.2/types/Internal.MakeOfferType.html create mode 100644 docs/0.17.2/types/Internal.MakeRefinanceOfferProps.html create mode 100644 docs/0.17.2/types/Internal.MaxSeniorRepaymentArg.html create mode 100644 docs/0.17.2/types/Internal.Maybe.html create mode 100644 docs/0.17.2/types/Internal.MultiSourceLoan.html create mode 100644 docs/0.17.2/types/Internal.MultiSourceLoanHistory.html create mode 100644 docs/0.17.2/types/Internal.Nft.html create mode 100644 docs/0.17.2/types/Internal.NftIdByContractAddressAndTokenIdQuery.html create mode 100644 docs/0.17.2/types/Internal.NftIdBySlugTokenIdQuery.html create mode 100644 docs/0.17.2/types/Internal.NftOrderInput.html create mode 100644 docs/0.17.2/types/Internal.NftStatistics.html create mode 100644 docs/0.17.2/types/Internal.Node.html create mode 100644 docs/0.17.2/types/Internal.Offer.html create mode 100644 docs/0.17.2/types/Internal.OfferFromExecutionOffer.html create mode 100644 docs/0.17.2/types/Internal.OfferValidator.html create mode 100644 docs/0.17.2/types/Internal.OfferValidatorInput.html create mode 100644 docs/0.17.2/types/Internal.OffersSortInput.html create mode 100644 docs/0.17.2/types/Internal.Optional.html create mode 100644 docs/0.17.2/types/Internal.OptionalNullable.html create mode 100644 docs/0.17.2/types/Internal.Order.html create mode 100644 docs/0.17.2/types/Internal.OwnedNftsQuery.html create mode 100644 docs/0.17.2/types/Internal.PlaceBidAbiTypeV5.html create mode 100644 docs/0.17.2/types/Internal.PlaceBidAbiTypeV6.html create mode 100644 docs/0.17.2/types/Internal.Props.html create mode 100644 docs/0.17.2/types/Internal.PublishSellAndRepayOrderMutation.html create mode 100644 docs/0.17.2/types/Internal.RenegotiationOfferInput.html create mode 100644 docs/0.17.2/types/Internal.RenegotiationRequest.html create mode 100644 docs/0.17.2/types/Internal.RepayAbiTypeV4.html create mode 100644 docs/0.17.2/types/Internal.RepayAbiTypeV5.html create mode 100644 docs/0.17.2/types/Internal.RepayAbiTypeV6.html create mode 100644 docs/0.17.2/types/Internal.Sale.html create mode 100644 docs/0.17.2/types/Internal.SaveCollectionOfferMutation.html create mode 100644 docs/0.17.2/types/Internal.SaveRenegotiationOfferMutation.html create mode 100644 docs/0.17.2/types/Internal.SaveSingleNftOfferMutation.html create mode 100644 docs/0.17.2/types/Internal.Scalars.html create mode 100644 docs/0.17.2/types/Internal.SellAndRepayOrder.html create mode 100644 docs/0.17.2/types/Internal.ShowOrderMutation.html create mode 100644 docs/0.17.2/types/Internal.Signature.html create mode 100644 docs/0.17.2/types/Internal.SignedRenegotiationOfferInput.html create mode 100644 docs/0.17.2/types/Internal.SingleNftOfferInput.html create mode 100644 docs/0.17.2/types/Internal.SingleNftSignedOfferInput.html create mode 100644 docs/0.17.2/types/Internal.Source.html create mode 100644 docs/0.17.2/types/Internal.SourceHistory.html create mode 100644 docs/0.17.2/types/Internal.StatByCollection.html create mode 100644 docs/0.17.2/types/Internal.TermsFilter.html create mode 100644 docs/0.17.2/types/Internal.TopUpRequest.html create mode 100644 docs/0.17.2/types/Internal.Trait.html create mode 100644 docs/0.17.2/types/Internal.UnhideOfferMutation.html create mode 100644 docs/0.17.2/types/Internal.UnhideRenegotiationOfferMutation.html create mode 100644 docs/0.17.2/types/Internal.UnlistNftMutation.html create mode 100644 docs/0.17.2/types/Internal.User.html create mode 100644 docs/0.17.2/types/Internal.UserFilter.html create mode 100644 docs/0.17.2/types/Internal.UserStatistics.html create mode 100644 docs/0.17.2/types/Internal.Wallet.html create mode 100644 docs/0.17.2/types/Internal.wrapOldERC721Args.html create mode 100644 docs/0.17.2/types/Types.CollectionOffer.html create mode 100644 docs/0.17.2/types/Types.CollectionOfferInput.html create mode 100644 docs/0.17.2/types/Types.ListListingsProps.html create mode 100644 docs/0.17.2/types/Types.ListOffersProps.html create mode 100644 docs/0.17.2/types/Types.NftStandard.html create mode 100644 docs/0.17.2/types/Types.RenegotiationInput.html create mode 100644 docs/0.17.2/types/Types.RenegotiationOffer.html create mode 100644 docs/0.17.2/types/Types.SingleNftOffer.html create mode 100644 docs/0.17.2/types/Types.SingleNftOfferInput.html create mode 100644 docs/0.17.2/types/Types.UnsignedCollectionOffer.html create mode 100644 docs/0.17.2/types/Types.UnsignedRenegotiationOffer.html create mode 100644 docs/0.17.2/types/Types.UnsignedSingleNftOffer.html create mode 100644 docs/0.17.2/variables/FULFILLED.html create mode 100644 docs/0.17.2/variables/Internal.auctionLoanLiquidatorABI-1.html create mode 100644 docs/0.17.2/variables/Internal.auctionLoanLiquidatorABI.html create mode 100644 docs/0.17.2/variables/Internal.auctionLoanLiquidatorAbi-2.html create mode 100644 docs/0.17.2/variables/Internal.auctionWithBuyoutLoanLiquidatorAbi.html create mode 100644 docs/0.17.2/variables/Internal.erc1155Abi.html create mode 100644 docs/0.17.2/variables/Internal.erc721ABI.html create mode 100644 docs/0.17.2/variables/Internal.multiSourceLoanABI-1.html create mode 100644 docs/0.17.2/variables/Internal.multiSourceLoanABI.html create mode 100644 docs/0.17.2/variables/Internal.multiSourceLoanAbi-2.html create mode 100644 docs/0.17.2/variables/Internal.oldErc721WrapperAbi.html create mode 100644 docs/0.17.2/variables/Internal.purchaseBundlerAbi.html create mode 100644 docs/0.17.2/variables/Internal.userVaultABI.html create mode 100644 docs/0.17.2/variables/Internal.userVaultAbi-1.html create mode 100644 docs/0.17.2/variables/REJECTED.html diff --git a/docs/0.17.2/.nojekyll b/docs/0.17.2/.nojekyll new file mode 100644 index 00000000..e2ac6616 --- /dev/null +++ b/docs/0.17.2/.nojekyll @@ -0,0 +1 @@ +TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false. \ No newline at end of file diff --git a/docs/0.17.2/assets/highlight.css b/docs/0.17.2/assets/highlight.css new file mode 100644 index 00000000..fb8bd2e7 --- /dev/null +++ b/docs/0.17.2/assets/highlight.css @@ -0,0 +1,85 @@ +:root { + --light-hl-0: #795E26; + --dark-hl-0: #DCDCAA; + --light-hl-1: #000000; + --dark-hl-1: #D4D4D4; + --light-hl-2: #A31515; + --dark-hl-2: #CE9178; + --light-hl-3: #0000FF; + --dark-hl-3: #569CD6; + --light-hl-4: #008000; + --dark-hl-4: #6A9955; + --light-hl-5: #AF00DB; + --dark-hl-5: #C586C0; + --light-hl-6: #001080; + --dark-hl-6: #9CDCFE; + --light-hl-7: #0070C1; + --dark-hl-7: #4FC1FF; + --light-hl-8: #098658; + --dark-hl-8: #B5CEA8; + --light-code-background: #FFFFFF; + --dark-code-background: #1E1E1E; +} + +@media (prefers-color-scheme: light) { :root { + --hl-0: var(--light-hl-0); + --hl-1: var(--light-hl-1); + --hl-2: var(--light-hl-2); + --hl-3: var(--light-hl-3); + --hl-4: var(--light-hl-4); + --hl-5: var(--light-hl-5); + --hl-6: var(--light-hl-6); + --hl-7: var(--light-hl-7); + --hl-8: var(--light-hl-8); + --code-background: var(--light-code-background); +} } + +@media (prefers-color-scheme: dark) { :root { + --hl-0: var(--dark-hl-0); + --hl-1: var(--dark-hl-1); + --hl-2: var(--dark-hl-2); + --hl-3: var(--dark-hl-3); + --hl-4: var(--dark-hl-4); + --hl-5: var(--dark-hl-5); + --hl-6: var(--dark-hl-6); + --hl-7: var(--dark-hl-7); + --hl-8: var(--dark-hl-8); + --code-background: var(--dark-code-background); +} } + +:root[data-theme='light'] { + --hl-0: var(--light-hl-0); + --hl-1: var(--light-hl-1); + --hl-2: var(--light-hl-2); + --hl-3: var(--light-hl-3); + --hl-4: var(--light-hl-4); + --hl-5: var(--light-hl-5); + --hl-6: var(--light-hl-6); + --hl-7: var(--light-hl-7); + --hl-8: var(--light-hl-8); + --code-background: var(--light-code-background); +} + +:root[data-theme='dark'] { + --hl-0: var(--dark-hl-0); + --hl-1: var(--dark-hl-1); + --hl-2: var(--dark-hl-2); + --hl-3: var(--dark-hl-3); + --hl-4: var(--dark-hl-4); + --hl-5: var(--dark-hl-5); + --hl-6: var(--dark-hl-6); + --hl-7: var(--dark-hl-7); + --hl-8: var(--dark-hl-8); + --code-background: var(--dark-code-background); +} + +.hl-0 { color: var(--hl-0); } +.hl-1 { color: var(--hl-1); } +.hl-2 { color: var(--hl-2); } +.hl-3 { color: var(--hl-3); } +.hl-4 { color: var(--hl-4); } +.hl-5 { color: var(--hl-5); } +.hl-6 { color: var(--hl-6); } +.hl-7 { color: var(--hl-7); } +.hl-8 { color: var(--hl-8); } +pre, code { background: var(--code-background); } diff --git a/docs/0.17.2/assets/main.js b/docs/0.17.2/assets/main.js new file mode 100644 index 00000000..4c8fa615 --- /dev/null +++ b/docs/0.17.2/assets/main.js @@ -0,0 +1,58 @@ +"use strict"; +"use strict";(()=>{var Se=Object.create;var re=Object.defineProperty;var we=Object.getOwnPropertyDescriptor;var Te=Object.getOwnPropertyNames;var ke=Object.getPrototypeOf,Qe=Object.prototype.hasOwnProperty;var Pe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Ie=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Te(e))!Qe.call(t,i)&&i!==r&&re(t,i,{get:()=>e[i],enumerable:!(n=we(e,i))||n.enumerable});return t};var Ce=(t,e,r)=>(r=t!=null?Se(ke(t)):{},Ie(e||!t||!t.__esModule?re(r,"default",{value:t,enumerable:!0}):r,t));var ae=Pe((se,oe)=>{(function(){var t=function(e){var r=new t.Builder;return r.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),r.searchPipeline.add(t.stemmer),e.call(r,r),r.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(r){e.console&&console.warn&&console.warn(r)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var r=Object.create(null),n=Object.keys(e),i=0;i0){var d=t.utils.clone(r)||{};d.position=[a,u],d.index=s.length,s.push(new t.Token(n.slice(a,o),d))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,r){r in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+r),e.label=r,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var r=e.label&&e.label in this.registeredFunctions;r||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. +`,e)},t.Pipeline.load=function(e){var r=new t.Pipeline;return e.forEach(function(n){var i=t.Pipeline.registeredFunctions[n];if(i)r.add(i);else throw new Error("Cannot load unregistered function: "+n)}),r},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(r){t.Pipeline.warnIfFunctionNotRegistered(r),this._stack.push(r)},this)},t.Pipeline.prototype.after=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");n=n+1,this._stack.splice(n,0,r)},t.Pipeline.prototype.before=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");this._stack.splice(n,0,r)},t.Pipeline.prototype.remove=function(e){var r=this._stack.indexOf(e);r!=-1&&this._stack.splice(r,1)},t.Pipeline.prototype.run=function(e){for(var r=this._stack.length,n=0;n1&&(oe&&(n=s),o!=e);)i=n-r,s=r+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ol?d+=2:a==l&&(r+=n[u+1]*i[d+1],u+=2,d+=2);return r},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),r=1,n=0;r0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}if(s.str.length==0&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}s.str.length==1&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var d=s.str.charAt(0),m=s.str.charAt(1),y;m in s.node.edges?y=s.node.edges[m]:(y=new t.TokenSet,s.node.edges[m]=y),s.str.length==1&&(y.final=!0),i.push({node:y,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return n},t.TokenSet.fromString=function(e){for(var r=new t.TokenSet,n=r,i=0,s=e.length;i=e;r--){var n=this.uncheckedNodes[r],i=n.child.toString();i in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[i]:(n.child._str=i,this.minimizedNodes[i]=n.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(r){var n=new t.QueryParser(e,r);n.parse()})},t.Index.prototype.query=function(e){for(var r=new t.Query(this.fields),n=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),l=0;l1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,r){var n=e[this._ref],i=Object.keys(this._fields);this._documents[n]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,r;do e=this.next(),r=e.charCodeAt(0);while(r>47&&r<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var r=e.next();if(r==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(r.charCodeAt(0)==92){e.escapeCharacter();continue}if(r==":")return t.QueryLexer.lexField;if(r=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(r=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(r=="+"&&e.width()===1||r=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(r.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,r){this.lexer=new t.QueryLexer(e),this.query=r,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var r=e.peekLexeme();if(r!=null)switch(r.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(n+=" with value '"+r.str+"'"),new t.QueryParseError(n,r.start,r.end)}},t.QueryParser.parsePresence=function(e){var r=e.consumeLexeme();if(r!=null){switch(r.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+r.str+"'";throw new t.QueryParseError(n,r.start,r.end)}var i=e.peekLexeme();if(i==null){var n="expecting term or field, found nothing";throw new t.QueryParseError(n,r.start,r.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(n,i.start,i.end)}}},t.QueryParser.parseField=function(e){var r=e.consumeLexeme();if(r!=null){if(e.query.allFields.indexOf(r.str)==-1){var n=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+r.str+"', possible fields: "+n;throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.fields=[r.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,r.start,r.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var r=e.consumeLexeme();if(r!=null){e.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(n==null){e.nextClause();return}switch(n.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+n.type+"'";throw new t.QueryParseError(i,n.start,n.end)}}},t.QueryParser.parseEditDistance=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="edit distance must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.editDistance=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="boost must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.boost=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,r){typeof define=="function"&&define.amd?define(r):typeof se=="object"?oe.exports=r():e.lunr=r()}(this,function(){return t})})()});var ne=[];function G(t,e){ne.push({selector:e,constructor:t})}var U=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureActivePageVisible(),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible())}createComponents(e){ne.forEach(r=>{e.querySelectorAll(r.selector).forEach(n=>{n.dataset.hasInstance||(new r.constructor({el:n,app:this}),n.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),r=e?.parentElement;for(;r&&!r.classList.contains(".tsd-navigation");)r instanceof HTMLDetailsElement&&(r.open=!0),r=r.parentElement;if(e){let n=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=n}}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let r=e.parentElement;for(;r&&r.tagName!=="SECTION";)r=r.parentElement;if(r&&r.offsetParent==null){this.alwaysVisibleMember=r,r.classList.add("always-visible");let n=document.createElement("p");n.classList.add("warning"),n.textContent="This member is normally hidden due to your filter settings.",r.prepend(n)}}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let r;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent="Copied!",e.classList.add("visible"),clearTimeout(r),r=setTimeout(()=>{e.classList.remove("visible"),r=setTimeout(()=>{e.textContent="Copy"},100)},1e3)})})}};var ie=(t,e=100)=>{let r;return()=>{clearTimeout(r),r=setTimeout(()=>t(),e)}};var ce=Ce(ae());function de(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("tsd-search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let r=document.querySelector("#tsd-search input"),n=document.querySelector("#tsd-search .results");if(!r||!n)throw new Error("The input field or the result list wrapper was not found");let i=!1;n.addEventListener("mousedown",()=>i=!0),n.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Oe(t,n,r,s)}function Oe(t,e,r,n){r.addEventListener("input",ie(()=>{Re(t,e,r,n)},200));let i=!1;r.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Fe(e,r):s.key=="Escape"?r.blur():s.key=="ArrowUp"?ue(e,-1):s.key==="ArrowDown"?ue(e,1):i=!1}),r.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!r.matches(":focus")&&s.key==="/"&&(r.focus(),s.preventDefault())})}function _e(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=ce.Index.load(window.searchData.index))}function Re(t,e,r,n){if(_e(n,t),!n.index||!n.data)return;e.textContent="";let i=r.value.trim(),s=i?n.index.search(`*${i}*`):[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o${le(l.parent,i)}.${u}`);let d=document.createElement("li");d.classList.value=l.classes??"";let m=document.createElement("a");m.href=n.base+l.url,m.innerHTML=u,d.append(m),e.appendChild(d)}}function ue(t,e){let r=t.querySelector(".current");if(!r)r=t.querySelector(e==1?"li:first-child":"li:last-child"),r&&r.classList.add("current");else{let n=r;if(e===1)do n=n.nextElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);else do n=n.previousElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);n&&(r.classList.remove("current"),n.classList.add("current"))}}function Fe(t,e){let r=t.querySelector(".current");if(r||(r=t.querySelector("li:first-child")),r){let n=r.querySelector("a");n&&(window.location.href=n.href),e.blur()}}function le(t,e){if(e==="")return t;let r=t.toLocaleLowerCase(),n=e.toLocaleLowerCase(),i=[],s=0,o=r.indexOf(n);for(;o!=-1;)i.push(K(t.substring(s,o)),`${K(t.substring(o,o+n.length))}`),s=o+n.length,o=r.indexOf(n,s);return i.push(K(t.substring(s))),i.join("")}var Me={"&":"&","<":"<",">":">","'":"'",'"':"""};function K(t){return t.replace(/[&<>"'"]/g,e=>Me[e])}var P=class{constructor(e){this.el=e.el,this.app=e.app}};var M="mousedown",fe="mousemove",N="mouseup",J={x:0,y:0},he=!1,ee=!1,De=!1,D=!1,pe=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(pe?"is-mobile":"not-mobile");pe&&"ontouchstart"in document.documentElement&&(De=!0,M="touchstart",fe="touchmove",N="touchend");document.addEventListener(M,t=>{ee=!0,D=!1;let e=M=="touchstart"?t.targetTouches[0]:t;J.y=e.pageY||0,J.x=e.pageX||0});document.addEventListener(fe,t=>{if(ee&&!D){let e=M=="touchstart"?t.targetTouches[0]:t,r=J.x-(e.pageX||0),n=J.y-(e.pageY||0);D=Math.sqrt(r*r+n*n)>10}});document.addEventListener(N,()=>{ee=!1});document.addEventListener("click",t=>{he&&(t.preventDefault(),t.stopImmediatePropagation(),he=!1)});var X=class extends P{constructor(r){super(r);this.className=this.el.dataset.toggle||"",this.el.addEventListener(N,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(M,n=>this.onDocumentPointerDown(n)),document.addEventListener(N,n=>this.onDocumentPointerUp(n))}setActive(r){if(this.active==r)return;this.active=r,document.documentElement.classList.toggle("has-"+this.className,r),this.el.classList.toggle("active",r);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(r){D||(this.setActive(!0),r.preventDefault())}onDocumentPointerDown(r){if(this.active){if(r.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(r){if(!D&&this.active&&r.target.closest(".col-sidebar")){let n=r.target.closest("a");if(n){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),n.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var te;try{te=localStorage}catch{te={getItem(){return null},setItem(){}}}var Q=te;var me=document.head.appendChild(document.createElement("style"));me.dataset.for="filters";var Y=class extends P{constructor(r){super(r);this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),me.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } +`}fromLocalStorage(){let r=Q.getItem(this.key);return r?r==="true":this.el.checked}setLocalStorage(r){Q.setItem(this.key,r.toString()),this.value=r,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let n=Array.from(r.querySelectorAll(".tsd-index-link")).every(i=>i.offsetParent==null);r.style.display=n?"none":"block"})}};var Z=class extends P{constructor(r){super(r);this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.dataset.key??this.summary.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`;let n=Q.getItem(this.key);this.el.open=n?n==="true":this.el.open,this.el.addEventListener("toggle",()=>this.update()),this.update()}update(){this.icon.style.transform=`rotate(${this.el.open?0:-90}deg)`,Q.setItem(this.key,this.el.open.toString())}};function ve(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,ye(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),ye(t.value)})}function ye(t){document.documentElement.dataset.theme=t}de();G(X,"a[data-toggle]");G(Z,".tsd-index-accordion");G(Y,".tsd-filter-item input[type=checkbox]");var ge=document.getElementById("tsd-theme");ge&&ve(ge);var Ae=new U;Object.defineProperty(window,"app",{value:Ae});document.querySelectorAll("summary a").forEach(t=>{t.addEventListener("click",()=>{location.assign(t.href)})});})(); +/*! Bundled license information: + +lunr/lunr.js: + (** + * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9 + * Copyright (C) 2020 Oliver Nightingale + * @license MIT + *) + (*! + * lunr.utils + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Set + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.tokenizer + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Pipeline + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Vector + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.stemmer + * Copyright (C) 2020 Oliver Nightingale + * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt + *) + (*! + * lunr.stopWordFilter + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.trimmer + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.TokenSet + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Index + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Builder + * Copyright (C) 2020 Oliver Nightingale + *) +*/ diff --git a/docs/0.17.2/assets/search.js b/docs/0.17.2/assets/search.js new file mode 100644 index 00000000..6e918e65 --- /dev/null +++ b/docs/0.17.2/assets/search.js @@ -0,0 +1 @@ +window.searchData = JSON.parse("{\"rows\":[{\"kind\":128,\"name\":\"Gondi\",\"url\":\"classes/Gondi.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Gondi.html#constructor\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":1024,\"name\":\"contracts\",\"url\":\"classes/Gondi.html#contracts\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Gondi.html#wallet\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Gondi.html#wallet.__type\",\"classes\":\"\",\"parent\":\"Gondi.wallet\"},{\"kind\":1024,\"name\":\"account\",\"url\":\"classes/Gondi.html#account\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Gondi.html#bcClient\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Gondi.html#bcClient.__type-1\",\"classes\":\"\",\"parent\":\"Gondi.bcClient\"},{\"kind\":1024,\"name\":\"api\",\"url\":\"classes/Gondi.html#api\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":1024,\"name\":\"defaults\",\"url\":\"classes/Gondi.html#defaults\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Gondi.html#defaults.__type-2\",\"classes\":\"\",\"parent\":\"Gondi.defaults\"},{\"kind\":1024,\"name\":\"Msl\",\"url\":\"classes/Gondi.html#defaults.__type-2.Msl\",\"classes\":\"\",\"parent\":\"Gondi.defaults.__type\"},{\"kind\":1024,\"name\":\"UserVault\",\"url\":\"classes/Gondi.html#defaults.__type-2.UserVault\",\"classes\":\"\",\"parent\":\"Gondi.defaults.__type\"},{\"kind\":2048,\"name\":\"makeSingleNftOffer\",\"url\":\"classes/Gondi.html#makeSingleNftOffer\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"makeCollectionOffer\",\"url\":\"classes/Gondi.html#makeCollectionOffer\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"makeOrder\",\"url\":\"classes/Gondi.html#makeOrder\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"cancelOrder\",\"url\":\"classes/Gondi.html#cancelOrder\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"cancelOffer\",\"url\":\"classes/Gondi.html#cancelOffer\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"cancelAllOffers\",\"url\":\"classes/Gondi.html#cancelAllOffers\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"hideOffer\",\"url\":\"classes/Gondi.html#hideOffer\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"unhideOffer\",\"url\":\"classes/Gondi.html#unhideOffer\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"makeRefinanceOffer\",\"url\":\"classes/Gondi.html#makeRefinanceOffer\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"cancelRefinanceOffer\",\"url\":\"classes/Gondi.html#cancelRefinanceOffer\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"hideRenegotiationOffer\",\"url\":\"classes/Gondi.html#hideRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"unhideRenegotiationOffer\",\"url\":\"classes/Gondi.html#unhideRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"hideOrder\",\"url\":\"classes/Gondi.html#hideOrder\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"showOrder\",\"url\":\"classes/Gondi.html#showOrder\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"cancelAllRenegotiations\",\"url\":\"classes/Gondi.html#cancelAllRenegotiations\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"offerExecutionFromOffers\",\"url\":\"classes/Gondi.html#offerExecutionFromOffers\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"emitLoan\",\"url\":\"classes/Gondi.html#emitLoan\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"refinanceFromOffers\",\"url\":\"classes/Gondi.html#refinanceFromOffers\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"repayLoan\",\"url\":\"classes/Gondi.html#repayLoan\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"offers\",\"url\":\"classes/Gondi.html#offers\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"loans\",\"url\":\"classes/Gondi.html#loans\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"list\",\"url\":\"classes/Gondi.html#list\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"unlist\",\"url\":\"classes/Gondi.html#unlist\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"listings\",\"url\":\"classes/Gondi.html#listings\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"nftId\",\"url\":\"classes/Gondi.html#nftId\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"collections\",\"url\":\"classes/Gondi.html#collections\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"collectionId\",\"url\":\"classes/Gondi.html#collectionId\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"ownedNfts\",\"url\":\"classes/Gondi.html#ownedNfts\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"getRemainingLockupSeconds\",\"url\":\"classes/Gondi.html#getRemainingLockupSeconds\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"isEndLockedUp\",\"url\":\"classes/Gondi.html#isEndLockedUp\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"refinanceBatch\",\"url\":\"classes/Gondi.html#refinanceBatch\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"refinanceFullLoan\",\"url\":\"classes/Gondi.html#refinanceFullLoan\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"refinancePartialLoan\",\"url\":\"classes/Gondi.html#refinancePartialLoan\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"addTranche\",\"url\":\"classes/Gondi.html#addTranche\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"delegateMulticall\",\"url\":\"classes/Gondi.html#delegateMulticall\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"delegate\",\"url\":\"classes/Gondi.html#delegate\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"revokeDelegate\",\"url\":\"classes/Gondi.html#revokeDelegate\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"revokeDelegationsAndEmitLoan\",\"url\":\"classes/Gondi.html#revokeDelegationsAndEmitLoan\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"liquidateLoan\",\"url\":\"classes/Gondi.html#liquidateLoan\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"placeBid\",\"url\":\"classes/Gondi.html#placeBid\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"settleAuction\",\"url\":\"classes/Gondi.html#settleAuction\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"settleAuctionWithBuyout\",\"url\":\"classes/Gondi.html#settleAuctionWithBuyout\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"getAuctionRemainingLockupSeconds\",\"url\":\"classes/Gondi.html#getAuctionRemainingLockupSeconds\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"getOwner\",\"url\":\"classes/Gondi.html#getOwner\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"balanceOf\",\"url\":\"classes/Gondi.html#balanceOf\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"isApprovedNFTForAll\",\"url\":\"classes/Gondi.html#isApprovedNFTForAll\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"approveNFTForAll\",\"url\":\"classes/Gondi.html#approveNFTForAll\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"isApprovedToken\",\"url\":\"classes/Gondi.html#isApprovedToken\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"approveToken\",\"url\":\"classes/Gondi.html#approveToken\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"createUserVault\",\"url\":\"classes/Gondi.html#createUserVault\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"_createUserVault\",\"url\":\"classes/Gondi.html#_createUserVault\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"depositUserVaultERC721s\",\"url\":\"classes/Gondi.html#depositUserVaultERC721s\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"depositUserVaultERC1155s\",\"url\":\"classes/Gondi.html#depositUserVaultERC1155s\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"burnUserVaultAndWithdraw\",\"url\":\"classes/Gondi.html#burnUserVaultAndWithdraw\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"wrapOldERC721\",\"url\":\"classes/Gondi.html#wrapOldERC721\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"unwrapOldERC721\",\"url\":\"classes/Gondi.html#unwrapOldERC721\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":2048,\"name\":\"buyWithSellAndRepay\",\"url\":\"classes/Gondi.html#buyWithSellAndRepay\",\"classes\":\"\",\"parent\":\"Gondi\"},{\"kind\":8,\"name\":\"LoanStatusType\",\"url\":\"enums/LoanStatusType.html\",\"classes\":\"\"},{\"kind\":16,\"name\":\"LoanAuctioned\",\"url\":\"enums/LoanStatusType.html#LoanAuctioned\",\"classes\":\"\",\"parent\":\"LoanStatusType\"},{\"kind\":16,\"name\":\"LoanAuctionedWithBuyout\",\"url\":\"enums/LoanStatusType.html#LoanAuctionedWithBuyout\",\"classes\":\"\",\"parent\":\"LoanStatusType\"},{\"kind\":16,\"name\":\"LoanDefaulted\",\"url\":\"enums/LoanStatusType.html#LoanDefaulted\",\"classes\":\"\",\"parent\":\"LoanStatusType\"},{\"kind\":16,\"name\":\"LoanForeclosed\",\"url\":\"enums/LoanStatusType.html#LoanForeclosed\",\"classes\":\"\",\"parent\":\"LoanStatusType\"},{\"kind\":16,\"name\":\"LoanInitiated\",\"url\":\"enums/LoanStatusType.html#LoanInitiated\",\"classes\":\"\",\"parent\":\"LoanStatusType\"},{\"kind\":16,\"name\":\"LoanRepaid\",\"url\":\"enums/LoanStatusType.html#LoanRepaid\",\"classes\":\"\",\"parent\":\"LoanStatusType\"},{\"kind\":16,\"name\":\"LoanSentToAuction\",\"url\":\"enums/LoanStatusType.html#LoanSentToAuction\",\"classes\":\"\",\"parent\":\"LoanStatusType\"},{\"kind\":8,\"name\":\"OfferStatus\",\"url\":\"enums/OfferStatus.html\",\"classes\":\"\"},{\"kind\":16,\"name\":\"Active\",\"url\":\"enums/OfferStatus.html#Active\",\"classes\":\"\",\"parent\":\"OfferStatus\"},{\"kind\":16,\"name\":\"Cancelled\",\"url\":\"enums/OfferStatus.html#Cancelled\",\"classes\":\"\",\"parent\":\"OfferStatus\"},{\"kind\":16,\"name\":\"Executed\",\"url\":\"enums/OfferStatus.html#Executed\",\"classes\":\"\",\"parent\":\"OfferStatus\"},{\"kind\":16,\"name\":\"Expired\",\"url\":\"enums/OfferStatus.html#Expired\",\"classes\":\"\",\"parent\":\"OfferStatus\"},{\"kind\":16,\"name\":\"Inactive\",\"url\":\"enums/OfferStatus.html#Inactive\",\"classes\":\"\",\"parent\":\"OfferStatus\"},{\"kind\":16,\"name\":\"Outperformed\",\"url\":\"enums/OfferStatus.html#Outperformed\",\"classes\":\"\",\"parent\":\"OfferStatus\"},{\"kind\":8,\"name\":\"OffersSortField\",\"url\":\"enums/OffersSortField.html\",\"classes\":\"\"},{\"kind\":16,\"name\":\"AprBps\",\"url\":\"enums/OffersSortField.html#AprBps\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"AvailablePrincipalAmount\",\"url\":\"enums/OffersSortField.html#AvailablePrincipalAmount\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"CreatedDate\",\"url\":\"enums/OffersSortField.html#CreatedDate\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"DailyInterest\",\"url\":\"enums/OffersSortField.html#DailyInterest\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"Duration\",\"url\":\"enums/OffersSortField.html#Duration\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"EffectiveAprBps\",\"url\":\"enums/OffersSortField.html#EffectiveAprBps\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"Expiration\",\"url\":\"enums/OffersSortField.html#Expiration\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"Fee\",\"url\":\"enums/OffersSortField.html#Fee\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"MaxPrincipal\",\"url\":\"enums/OffersSortField.html#MaxPrincipal\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"NetInterest\",\"url\":\"enums/OffersSortField.html#NetInterest\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"NetPrincipal\",\"url\":\"enums/OffersSortField.html#NetPrincipal\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"PrincipalAmount\",\"url\":\"enums/OffersSortField.html#PrincipalAmount\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"Repayment\",\"url\":\"enums/OffersSortField.html#Repayment\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"Status\",\"url\":\"enums/OffersSortField.html#Status\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":16,\"name\":\"TotalInterest\",\"url\":\"enums/OffersSortField.html#TotalInterest\",\"classes\":\"\",\"parent\":\"OffersSortField\"},{\"kind\":8,\"name\":\"Ordering\",\"url\":\"enums/Ordering.html\",\"classes\":\"\"},{\"kind\":16,\"name\":\"Asc\",\"url\":\"enums/Ordering.html#Asc\",\"classes\":\"\",\"parent\":\"Ordering\"},{\"kind\":16,\"name\":\"Desc\",\"url\":\"enums/Ordering.html#Desc\",\"classes\":\"\",\"parent\":\"Ordering\"},{\"kind\":8,\"name\":\"MarketplaceEnum\",\"url\":\"enums/MarketplaceEnum.html\",\"classes\":\"\"},{\"kind\":16,\"name\":\"Gondi\",\"url\":\"enums/MarketplaceEnum.html#Gondi\",\"classes\":\"\",\"parent\":\"MarketplaceEnum\"},{\"kind\":16,\"name\":\"Nftfi\",\"url\":\"enums/MarketplaceEnum.html#Nftfi\",\"classes\":\"\",\"parent\":\"MarketplaceEnum\"},{\"kind\":8,\"name\":\"TokenStandardType\",\"url\":\"enums/TokenStandardType.html\",\"classes\":\"\"},{\"kind\":16,\"name\":\"Erc721\",\"url\":\"enums/TokenStandardType.html#Erc721\",\"classes\":\"\",\"parent\":\"TokenStandardType\"},{\"kind\":16,\"name\":\"Erc1155\",\"url\":\"enums/TokenStandardType.html#Erc1155\",\"classes\":\"\",\"parent\":\"TokenStandardType\"},{\"kind\":16,\"name\":\"OldErc721\",\"url\":\"enums/TokenStandardType.html#OldErc721\",\"classes\":\"\",\"parent\":\"TokenStandardType\"},{\"kind\":4,\"name\":\"Types\",\"url\":\"modules/Types.html\",\"classes\":\"\"},{\"kind\":4194304,\"name\":\"SingleNftOfferInput\",\"url\":\"types/Types.SingleNftOfferInput.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":4194304,\"name\":\"UnsignedSingleNftOffer\",\"url\":\"types/Types.UnsignedSingleNftOffer.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":4194304,\"name\":\"SingleNftOffer\",\"url\":\"types/Types.SingleNftOffer.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":4194304,\"name\":\"CollectionOfferInput\",\"url\":\"types/Types.CollectionOfferInput.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":4194304,\"name\":\"UnsignedCollectionOffer\",\"url\":\"types/Types.UnsignedCollectionOffer.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":4194304,\"name\":\"CollectionOffer\",\"url\":\"types/Types.CollectionOffer.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":4194304,\"name\":\"RenegotiationInput\",\"url\":\"types/Types.RenegotiationInput.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":4194304,\"name\":\"UnsignedRenegotiationOffer\",\"url\":\"types/Types.UnsignedRenegotiationOffer.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":4194304,\"name\":\"RenegotiationOffer\",\"url\":\"types/Types.RenegotiationOffer.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":4194304,\"name\":\"ListOffersProps\",\"url\":\"types/Types.ListOffersProps.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Types.ListOffersProps.html#__type\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps\"},{\"kind\":1024,\"name\":\"limit\",\"url\":\"types/Types.ListOffersProps.html#__type.limit\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type\"},{\"kind\":1024,\"name\":\"cursor\",\"url\":\"types/Types.ListOffersProps.html#__type.cursor\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type\"},{\"kind\":1024,\"name\":\"sortBy\",\"url\":\"types/Types.ListOffersProps.html#__type.sortBy\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type\"},{\"kind\":1024,\"name\":\"filterBy\",\"url\":\"types/Types.ListOffersProps.html#__type.filterBy\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Types.ListOffersProps.html#__type.filterBy.__type-1\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type.filterBy\"},{\"kind\":1024,\"name\":\"nft\",\"url\":\"types/Types.ListOffersProps.html#__type.filterBy.__type-1.nft\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type.filterBy.__type\"},{\"kind\":1024,\"name\":\"onlySingleNftOffers\",\"url\":\"types/Types.ListOffersProps.html#__type.filterBy.__type-1.onlySingleNftOffers\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type.filterBy.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Types.ListOffersProps.html#__type.filterBy.__type-1.collection\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type.filterBy.__type\"},{\"kind\":1024,\"name\":\"onlyCollectionOffers\",\"url\":\"types/Types.ListOffersProps.html#__type.filterBy.__type-1.onlyCollectionOffers\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type.filterBy.__type\"},{\"kind\":1024,\"name\":\"borrower\",\"url\":\"types/Types.ListOffersProps.html#__type.filterBy.__type-1.borrower\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type.filterBy.__type\"},{\"kind\":1024,\"name\":\"lenders\",\"url\":\"types/Types.ListOffersProps.html#__type.filterBy.__type-1.lenders\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type.filterBy.__type\"},{\"kind\":1024,\"name\":\"status\",\"url\":\"types/Types.ListOffersProps.html#__type.filterBy.__type-1.status\",\"classes\":\"\",\"parent\":\"Types.ListOffersProps.__type.filterBy.__type\"},{\"kind\":256,\"name\":\"ListLoansProps\",\"url\":\"interfaces/Types.ListLoansProps.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":1024,\"name\":\"limit\",\"url\":\"interfaces/Types.ListLoansProps.html#limit\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":1024,\"name\":\"cursor\",\"url\":\"interfaces/Types.ListLoansProps.html#cursor\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":1024,\"name\":\"borrowers\",\"url\":\"interfaces/Types.ListLoansProps.html#borrowers\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":1024,\"name\":\"collections\",\"url\":\"interfaces/Types.ListLoansProps.html#collections\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":1024,\"name\":\"nfts\",\"url\":\"interfaces/Types.ListLoansProps.html#nfts\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":1024,\"name\":\"statuses\",\"url\":\"interfaces/Types.ListLoansProps.html#statuses\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":1024,\"name\":\"sortBy\",\"url\":\"interfaces/Types.ListLoansProps.html#sortBy\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":1024,\"name\":\"terms\",\"url\":\"interfaces/Types.ListLoansProps.html#terms\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":1024,\"name\":\"orderByStatuses\",\"url\":\"interfaces/Types.ListLoansProps.html#orderByStatuses\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":1024,\"name\":\"loansCurrencyAddress\",\"url\":\"interfaces/Types.ListLoansProps.html#loansCurrencyAddress\",\"classes\":\"\",\"parent\":\"Types.ListLoansProps\"},{\"kind\":4194304,\"name\":\"ListListingsProps\",\"url\":\"types/Types.ListListingsProps.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Types.ListListingsProps.html#__type\",\"classes\":\"\",\"parent\":\"Types.ListListingsProps\"},{\"kind\":1024,\"name\":\"collections\",\"url\":\"types/Types.ListListingsProps.html#__type.collections\",\"classes\":\"\",\"parent\":\"Types.ListListingsProps.__type\"},{\"kind\":1024,\"name\":\"user\",\"url\":\"types/Types.ListListingsProps.html#__type.user\",\"classes\":\"\",\"parent\":\"Types.ListListingsProps.__type\"},{\"kind\":1024,\"name\":\"marketPlaces\",\"url\":\"types/Types.ListListingsProps.html#__type.marketPlaces\",\"classes\":\"\",\"parent\":\"Types.ListListingsProps.__type\"},{\"kind\":1024,\"name\":\"limit\",\"url\":\"types/Types.ListListingsProps.html#__type.limit\",\"classes\":\"\",\"parent\":\"Types.ListListingsProps.__type\"},{\"kind\":1024,\"name\":\"cursor\",\"url\":\"types/Types.ListListingsProps.html#__type.cursor\",\"classes\":\"\",\"parent\":\"Types.ListListingsProps.__type\"},{\"kind\":4194304,\"name\":\"NftStandard\",\"url\":\"types/Types.NftStandard.html\",\"classes\":\"\",\"parent\":\"Types\"},{\"kind\":32,\"name\":\"FULFILLED\",\"url\":\"variables/FULFILLED.html\",\"classes\":\"\"},{\"kind\":32,\"name\":\"REJECTED\",\"url\":\"variables/REJECTED.html\",\"classes\":\"\"},{\"kind\":2,\"name\":\"Internal\",\"url\":\"modules/Internal.html\",\"classes\":\"\"},{\"kind\":256,\"name\":\"GondiProps\",\"url\":\"interfaces/Internal.GondiProps.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"interfaces/Internal.GondiProps.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.GondiProps\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"interfaces/Internal.GondiProps.html#wallet.__type\",\"classes\":\"\",\"parent\":\"Internal.GondiProps.wallet\"},{\"kind\":1024,\"name\":\"apiClient\",\"url\":\"interfaces/Internal.GondiProps.html#apiClient\",\"classes\":\"\",\"parent\":\"Internal.GondiProps\"},{\"kind\":128,\"name\":\"Contracts\",\"url\":\"classes/Internal.Contracts.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.Contracts.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"publicClient\",\"url\":\"classes/Internal.Contracts.html#publicClient\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Contracts.html#publicClient.__type\",\"classes\":\"\",\"parent\":\"Internal.Contracts.publicClient\"},{\"kind\":1024,\"name\":\"walletClient\",\"url\":\"classes/Internal.Contracts.html#walletClient\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Contracts.html#walletClient.__type-1\",\"classes\":\"\",\"parent\":\"Internal.Contracts.walletClient\"},{\"kind\":1024,\"name\":\"MultiSourceLoanV4\",\"url\":\"classes/Internal.Contracts.html#MultiSourceLoanV4\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"MultiSourceLoanV5\",\"url\":\"classes/Internal.Contracts.html#MultiSourceLoanV5\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"MultiSourceLoanV6\",\"url\":\"classes/Internal.Contracts.html#MultiSourceLoanV6\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"AuctionLoanLiquidatorV4\",\"url\":\"classes/Internal.Contracts.html#AuctionLoanLiquidatorV4\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"AuctionLoanLiquidatorV5\",\"url\":\"classes/Internal.Contracts.html#AuctionLoanLiquidatorV5\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"AuctionLoanLiquidatorV6\",\"url\":\"classes/Internal.Contracts.html#AuctionLoanLiquidatorV6\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"UserVaultV5\",\"url\":\"classes/Internal.Contracts.html#UserVaultV5\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"UserVaultV6\",\"url\":\"classes/Internal.Contracts.html#UserVaultV6\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"PurchaseBundlerV5\",\"url\":\"classes/Internal.Contracts.html#PurchaseBundlerV5\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":1024,\"name\":\"PurchaseBundlerV6\",\"url\":\"classes/Internal.Contracts.html#PurchaseBundlerV6\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"GenericContract\",\"url\":\"classes/Internal.Contracts.html#GenericContract\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"Msl\",\"url\":\"classes/Internal.Contracts.html#Msl\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"All\",\"url\":\"classes/Internal.Contracts.html#All\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"PurchaseBundler\",\"url\":\"classes/Internal.Contracts.html#PurchaseBundler\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"UserVault\",\"url\":\"classes/Internal.Contracts.html#UserVault\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"Nft\",\"url\":\"classes/Internal.Contracts.html#Nft\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"ERC721\",\"url\":\"classes/Internal.Contracts.html#ERC721\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"OldERC721\",\"url\":\"classes/Internal.Contracts.html#OldERC721\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"ERC1155\",\"url\":\"classes/Internal.Contracts.html#ERC1155\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"OldERC721Wrapper\",\"url\":\"classes/Internal.Contracts.html#OldERC721Wrapper\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":2048,\"name\":\"ERC20\",\"url\":\"classes/Internal.Contracts.html#ERC20\",\"classes\":\"\",\"parent\":\"Internal.Contracts\"},{\"kind\":128,\"name\":\"Api\",\"url\":\"classes/Internal.Api.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.Api.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":1024,\"name\":\"api\",\"url\":\"classes/Internal.Api.html#api\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#api.__type\",\"classes\":\"\",\"parent\":\"Internal.Api.api\"},{\"kind\":2048,\"name\":\"listNft\",\"url\":\"classes/Internal.Api.html#api.__type.listNft\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"unlistNft\",\"url\":\"classes/Internal.Api.html#api.__type.unlistNft\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"generateCollectionOfferHash\",\"url\":\"classes/Internal.Api.html#api.__type.generateCollectionOfferHash\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"saveCollectionOffer\",\"url\":\"classes/Internal.Api.html#api.__type.saveCollectionOffer\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"hideOffer\",\"url\":\"classes/Internal.Api.html#api.__type.hideOffer\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"generateSingleNftOfferHash\",\"url\":\"classes/Internal.Api.html#api.__type.generateSingleNftOfferHash\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"saveSingleNftOffer\",\"url\":\"classes/Internal.Api.html#api.__type.saveSingleNftOffer\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"unhideOffer\",\"url\":\"classes/Internal.Api.html#api.__type.unhideOffer\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"hideOrder\",\"url\":\"classes/Internal.Api.html#api.__type.hideOrder\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"publishSellAndRepayOrder\",\"url\":\"classes/Internal.Api.html#api.__type.publishSellAndRepayOrder\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"showOrder\",\"url\":\"classes/Internal.Api.html#api.__type.showOrder\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"generateRenegotiationOfferHash\",\"url\":\"classes/Internal.Api.html#api.__type.generateRenegotiationOfferHash\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"hideRenegotiationOffer\",\"url\":\"classes/Internal.Api.html#api.__type.hideRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"saveRenegotiationOffer\",\"url\":\"classes/Internal.Api.html#api.__type.saveRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"unhideRenegotiationOffer\",\"url\":\"classes/Internal.Api.html#api.__type.unhideRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"collections\",\"url\":\"classes/Internal.Api.html#api.__type.collections\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"collectionByContractAddress\",\"url\":\"classes/Internal.Api.html#api.__type.collectionByContractAddress\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"collectionsIdByContractAddress\",\"url\":\"classes/Internal.Api.html#api.__type.collectionsIdByContractAddress\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"collectionIdBySlug\",\"url\":\"classes/Internal.Api.html#api.__type.collectionIdBySlug\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"listListings\",\"url\":\"classes/Internal.Api.html#api.__type.listListings\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"listLoans\",\"url\":\"classes/Internal.Api.html#api.__type.listLoans\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"nftIdByContractAddressAndTokenId\",\"url\":\"classes/Internal.Api.html#api.__type.nftIdByContractAddressAndTokenId\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"nftIdBySlugTokenId\",\"url\":\"classes/Internal.Api.html#api.__type.nftIdBySlugTokenId\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"ownedNfts\",\"url\":\"classes/Internal.Api.html#api.__type.ownedNfts\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":2048,\"name\":\"listOffers\",\"url\":\"classes/Internal.Api.html#api.__type.listOffers\",\"classes\":\"\",\"parent\":\"Internal.Api.api.__type\"},{\"kind\":1024,\"name\":\"generateSingleNftOfferHash\",\"url\":\"classes/Internal.Api.html#generateSingleNftOfferHash-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#generateSingleNftOfferHash-2.__type-1\",\"classes\":\"\",\"parent\":\"Internal.Api.generateSingleNftOfferHash\"},{\"kind\":1024,\"name\":\"generateCollectionOfferHash\",\"url\":\"classes/Internal.Api.html#generateCollectionOfferHash-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#generateCollectionOfferHash-2.__type-3\",\"classes\":\"\",\"parent\":\"Internal.Api.generateCollectionOfferHash\"},{\"kind\":1024,\"name\":\"generateRenegotiationOfferHash\",\"url\":\"classes/Internal.Api.html#generateRenegotiationOfferHash-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#generateRenegotiationOfferHash-2.__type-5\",\"classes\":\"\",\"parent\":\"Internal.Api.generateRenegotiationOfferHash\"},{\"kind\":1024,\"name\":\"nftIdBySlugTokenId\",\"url\":\"classes/Internal.Api.html#nftIdBySlugTokenId-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#nftIdBySlugTokenId-2.__type-7\",\"classes\":\"\",\"parent\":\"Internal.Api.nftIdBySlugTokenId\"},{\"kind\":1024,\"name\":\"nftIdByContractAddressAndTokenId\",\"url\":\"classes/Internal.Api.html#nftIdByContractAddressAndTokenId-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#nftIdByContractAddressAndTokenId-2.__type-9\",\"classes\":\"\",\"parent\":\"Internal.Api.nftIdByContractAddressAndTokenId\"},{\"kind\":1024,\"name\":\"collections\",\"url\":\"classes/Internal.Api.html#collections-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#collections-2.__type-11\",\"classes\":\"\",\"parent\":\"Internal.Api.collections\"},{\"kind\":1024,\"name\":\"collectionIdBySlug\",\"url\":\"classes/Internal.Api.html#collectionIdBySlug-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#collectionIdBySlug-2.__type-13\",\"classes\":\"\",\"parent\":\"Internal.Api.collectionIdBySlug\"},{\"kind\":1024,\"name\":\"collectionsIdByContractAddress\",\"url\":\"classes/Internal.Api.html#collectionsIdByContractAddress-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#collectionsIdByContractAddress-2.__type-15\",\"classes\":\"\",\"parent\":\"Internal.Api.collectionsIdByContractAddress\"},{\"kind\":1024,\"name\":\"collectionByContractAddress\",\"url\":\"classes/Internal.Api.html#collectionByContractAddress-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#collectionByContractAddress-2.__type-17\",\"classes\":\"\",\"parent\":\"Internal.Api.collectionByContractAddress\"},{\"kind\":1024,\"name\":\"listNft\",\"url\":\"classes/Internal.Api.html#listNft-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#listNft-2.__type-19\",\"classes\":\"\",\"parent\":\"Internal.Api.listNft\"},{\"kind\":1024,\"name\":\"unlistNft\",\"url\":\"classes/Internal.Api.html#unlistNft-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#unlistNft-2.__type-21\",\"classes\":\"\",\"parent\":\"Internal.Api.unlistNft\"},{\"kind\":1024,\"name\":\"ownedNfts\",\"url\":\"classes/Internal.Api.html#ownedNfts-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#ownedNfts-2.__type-23\",\"classes\":\"\",\"parent\":\"Internal.Api.ownedNfts\"},{\"kind\":1024,\"name\":\"hideOffer\",\"url\":\"classes/Internal.Api.html#hideOffer-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#hideOffer-2.__type-25\",\"classes\":\"\",\"parent\":\"Internal.Api.hideOffer\"},{\"kind\":1024,\"name\":\"hideRenegotiationOffer\",\"url\":\"classes/Internal.Api.html#hideRenegotiationOffer-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#hideRenegotiationOffer-2.__type-27\",\"classes\":\"\",\"parent\":\"Internal.Api.hideRenegotiationOffer\"},{\"kind\":1024,\"name\":\"unhideOffer\",\"url\":\"classes/Internal.Api.html#unhideOffer-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#unhideOffer-2.__type-29\",\"classes\":\"\",\"parent\":\"Internal.Api.unhideOffer\"},{\"kind\":1024,\"name\":\"unhideRenegotiationOffer\",\"url\":\"classes/Internal.Api.html#unhideRenegotiationOffer-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#unhideRenegotiationOffer-2.__type-31\",\"classes\":\"\",\"parent\":\"Internal.Api.unhideRenegotiationOffer\"},{\"kind\":1024,\"name\":\"hideOrder\",\"url\":\"classes/Internal.Api.html#hideOrder-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#hideOrder-2.__type-33\",\"classes\":\"\",\"parent\":\"Internal.Api.hideOrder\"},{\"kind\":1024,\"name\":\"showOrder\",\"url\":\"classes/Internal.Api.html#showOrder-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.Api.html#showOrder-2.__type-35\",\"classes\":\"\",\"parent\":\"Internal.Api.showOrder\"},{\"kind\":2048,\"name\":\"saveSingleNftOffer\",\"url\":\"classes/Internal.Api.html#saveSingleNftOffer-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":2048,\"name\":\"publishSellAndRepayOrder\",\"url\":\"classes/Internal.Api.html#publishSellAndRepayOrder-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":2048,\"name\":\"saveCollectionOffer\",\"url\":\"classes/Internal.Api.html#saveCollectionOffer-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":2048,\"name\":\"saveRefinanceOffer\",\"url\":\"classes/Internal.Api.html#saveRefinanceOffer\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":2048,\"name\":\"listOffers\",\"url\":\"classes/Internal.Api.html#listOffers-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":2048,\"name\":\"listLoans\",\"url\":\"classes/Internal.Api.html#listLoans-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":2048,\"name\":\"listListings\",\"url\":\"classes/Internal.Api.html#listListings-2\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":2048,\"name\":\"getWrapperAddress\",\"url\":\"classes/Internal.Api.html#getWrapperAddress\",\"classes\":\"\",\"parent\":\"Internal.Api\"},{\"kind\":4194304,\"name\":\"InputMaybe\",\"url\":\"types/Internal.InputMaybe.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"OfferValidatorInput\",\"url\":\"types/Internal.OfferValidatorInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.OfferValidatorInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.OfferValidatorInput\"},{\"kind\":1024,\"name\":\"arguments\",\"url\":\"types/Internal.OfferValidatorInput.html#__type.arguments\",\"classes\":\"\",\"parent\":\"Internal.OfferValidatorInput.__type\"},{\"kind\":1024,\"name\":\"validator\",\"url\":\"types/Internal.OfferValidatorInput.html#__type.validator\",\"classes\":\"\",\"parent\":\"Internal.OfferValidatorInput.__type\"},{\"kind\":4194304,\"name\":\"SingleNftSignedOfferInput\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput\"},{\"kind\":1024,\"name\":\"aprBps\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.aprBps\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"borrowerAddress\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.borrowerAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"capacity\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.capacity\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"contractAddress\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.contractAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.duration\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"expirationTime\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.expirationTime\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"fee\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.fee\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"maxSeniorRepayment\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.maxSeniorRepayment\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"maxTrancheFloor\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.maxTrancheFloor\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"nftId\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.nftId\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"offerHash\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.offerHash\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"offerId\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.offerId\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"offerValidators\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.offerValidators\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAddress\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.principalAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAmount\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.principalAmount\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"requiresLiquidation\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.requiresLiquidation\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"signature\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.signature\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.SingleNftSignedOfferInput.html#__type.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftSignedOfferInput.__type\"},{\"kind\":4194304,\"name\":\"NftOrderInput\",\"url\":\"types/Internal.NftOrderInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.NftOrderInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput\"},{\"kind\":1024,\"name\":\"amount\",\"url\":\"types/Internal.NftOrderInput.html#__type.amount\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"contractAddress\",\"url\":\"types/Internal.NftOrderInput.html#__type.contractAddress\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"currencyAddress\",\"url\":\"types/Internal.NftOrderInput.html#__type.currencyAddress\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"expirationTime\",\"url\":\"types/Internal.NftOrderInput.html#__type.expirationTime\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"isAsk\",\"url\":\"types/Internal.NftOrderInput.html#__type.isAsk\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"repaymentSignature\",\"url\":\"types/Internal.NftOrderInput.html#__type.repaymentSignature\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"replaceOrderId\",\"url\":\"types/Internal.NftOrderInput.html#__type.replaceOrderId\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"signature\",\"url\":\"types/Internal.NftOrderInput.html#__type.signature\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"startTime\",\"url\":\"types/Internal.NftOrderInput.html#__type.startTime\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"taker\",\"url\":\"types/Internal.NftOrderInput.html#__type.taker\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":1024,\"name\":\"tokenId\",\"url\":\"types/Internal.NftOrderInput.html#__type.tokenId\",\"classes\":\"\",\"parent\":\"Internal.NftOrderInput.__type\"},{\"kind\":4194304,\"name\":\"SellAndRepayOrder\",\"url\":\"types/Internal.SellAndRepayOrder.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"HideOfferMutation\",\"url\":\"types/Internal.HideOfferMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.HideOfferMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.HideOfferMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.HideOfferMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.HideOfferMutation.__type\"},{\"kind\":1024,\"name\":\"hideOffer\",\"url\":\"types/Internal.HideOfferMutation.html#__type.hideOffer\",\"classes\":\"\",\"parent\":\"Internal.HideOfferMutation.__type\"},{\"kind\":4194304,\"name\":\"UnhideOfferMutation\",\"url\":\"types/Internal.UnhideOfferMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.UnhideOfferMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.UnhideOfferMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.UnhideOfferMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.UnhideOfferMutation.__type\"},{\"kind\":1024,\"name\":\"showOffer\",\"url\":\"types/Internal.UnhideOfferMutation.html#__type.showOffer\",\"classes\":\"\",\"parent\":\"Internal.UnhideOfferMutation.__type\"},{\"kind\":4194304,\"name\":\"MakeRefinanceOfferProps\",\"url\":\"types/Internal.MakeRefinanceOfferProps.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"HideRenegotiationOfferMutation\",\"url\":\"types/Internal.HideRenegotiationOfferMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.HideRenegotiationOfferMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.HideRenegotiationOfferMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.HideRenegotiationOfferMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.HideRenegotiationOfferMutation.__type\"},{\"kind\":1024,\"name\":\"hideRenegotiation\",\"url\":\"types/Internal.HideRenegotiationOfferMutation.html#__type.hideRenegotiation\",\"classes\":\"\",\"parent\":\"Internal.HideRenegotiationOfferMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.HideRenegotiationOfferMutation.html#__type.hideRenegotiation.__type-1\",\"classes\":\"\",\"parent\":\"Internal.HideRenegotiationOfferMutation.__type.hideRenegotiation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.HideRenegotiationOfferMutation.html#__type.hideRenegotiation.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.HideRenegotiationOfferMutation.__type.hideRenegotiation.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.HideRenegotiationOfferMutation.html#__type.hideRenegotiation.__type-1.id\",\"classes\":\"\",\"parent\":\"Internal.HideRenegotiationOfferMutation.__type.hideRenegotiation.__type\"},{\"kind\":4194304,\"name\":\"UnhideRenegotiationOfferMutation\",\"url\":\"types/Internal.UnhideRenegotiationOfferMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.UnhideRenegotiationOfferMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.UnhideRenegotiationOfferMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.UnhideRenegotiationOfferMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.UnhideRenegotiationOfferMutation.__type\"},{\"kind\":1024,\"name\":\"showRenegotiation\",\"url\":\"types/Internal.UnhideRenegotiationOfferMutation.html#__type.showRenegotiation\",\"classes\":\"\",\"parent\":\"Internal.UnhideRenegotiationOfferMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.UnhideRenegotiationOfferMutation.html#__type.showRenegotiation.__type-1\",\"classes\":\"\",\"parent\":\"Internal.UnhideRenegotiationOfferMutation.__type.showRenegotiation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.UnhideRenegotiationOfferMutation.html#__type.showRenegotiation.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.UnhideRenegotiationOfferMutation.__type.showRenegotiation.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.UnhideRenegotiationOfferMutation.html#__type.showRenegotiation.__type-1.id\",\"classes\":\"\",\"parent\":\"Internal.UnhideRenegotiationOfferMutation.__type.showRenegotiation.__type\"},{\"kind\":4194304,\"name\":\"HideOrderMutation\",\"url\":\"types/Internal.HideOrderMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.HideOrderMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.HideOrderMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.HideOrderMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.HideOrderMutation.__type\"},{\"kind\":1024,\"name\":\"hideOrder\",\"url\":\"types/Internal.HideOrderMutation.html#__type.hideOrder\",\"classes\":\"\",\"parent\":\"Internal.HideOrderMutation.__type\"},{\"kind\":4194304,\"name\":\"ShowOrderMutation\",\"url\":\"types/Internal.ShowOrderMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ShowOrderMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.ShowOrderMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ShowOrderMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.ShowOrderMutation.__type\"},{\"kind\":1024,\"name\":\"showOrder\",\"url\":\"types/Internal.ShowOrderMutation.html#__type.showOrder\",\"classes\":\"\",\"parent\":\"Internal.ShowOrderMutation.__type\"},{\"kind\":4194304,\"name\":\"OfferFromExecutionOffer\",\"url\":\"types/Internal.OfferFromExecutionOffer.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":256,\"name\":\"EmitLoanArgs\",\"url\":\"interfaces/Internal.EmitLoanArgs.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":1024,\"name\":\"offerExecution\",\"url\":\"interfaces/Internal.EmitLoanArgs.html#offerExecution\",\"classes\":\"\",\"parent\":\"Internal.EmitLoanArgs\"},{\"kind\":1024,\"name\":\"tokenId\",\"url\":\"interfaces/Internal.EmitLoanArgs.html#tokenId\",\"classes\":\"\",\"parent\":\"Internal.EmitLoanArgs\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"interfaces/Internal.EmitLoanArgs.html#duration\",\"classes\":\"\",\"parent\":\"Internal.EmitLoanArgs\"},{\"kind\":1024,\"name\":\"principalReceiver\",\"url\":\"interfaces/Internal.EmitLoanArgs.html#principalReceiver\",\"classes\":\"\",\"parent\":\"Internal.EmitLoanArgs\"},{\"kind\":1024,\"name\":\"expirationTime\",\"url\":\"interfaces/Internal.EmitLoanArgs.html#expirationTime\",\"classes\":\"\",\"parent\":\"Internal.EmitLoanArgs\"},{\"kind\":4194304,\"name\":\"LoanToMslLoanType\",\"url\":\"types/Internal.LoanToMslLoanType.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"ListNftMutation\",\"url\":\"types/Internal.ListNftMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListNftMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.ListNftMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListNftMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.ListNftMutation.__type\"},{\"kind\":1024,\"name\":\"addOrUpdateListing\",\"url\":\"types/Internal.ListNftMutation.html#__type.addOrUpdateListing\",\"classes\":\"\",\"parent\":\"Internal.ListNftMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListNftMutation.html#__type.addOrUpdateListing.__type-1\",\"classes\":\"\",\"parent\":\"Internal.ListNftMutation.__type.addOrUpdateListing\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListNftMutation.html#__type.addOrUpdateListing.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.ListNftMutation.__type.addOrUpdateListing.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.ListNftMutation.html#__type.addOrUpdateListing.__type-1.id\",\"classes\":\"\",\"parent\":\"Internal.ListNftMutation.__type.addOrUpdateListing.__type\"},{\"kind\":4194304,\"name\":\"UnlistNftMutation\",\"url\":\"types/Internal.UnlistNftMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.UnlistNftMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.UnlistNftMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.UnlistNftMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.UnlistNftMutation.__type\"},{\"kind\":1024,\"name\":\"removeListing\",\"url\":\"types/Internal.UnlistNftMutation.html#__type.removeListing\",\"classes\":\"\",\"parent\":\"Internal.UnlistNftMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.UnlistNftMutation.html#__type.removeListing.__type-1\",\"classes\":\"\",\"parent\":\"Internal.UnlistNftMutation.__type.removeListing\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.UnlistNftMutation.html#__type.removeListing.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.UnlistNftMutation.__type.removeListing.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.UnlistNftMutation.html#__type.removeListing.__type-1.id\",\"classes\":\"\",\"parent\":\"Internal.UnlistNftMutation.__type.removeListing.__type\"},{\"kind\":4194304,\"name\":\"Exact\",\"url\":\"types/Internal.Exact.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Auction\",\"url\":\"types/Internal.Auction.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"CreateVaultArgs\",\"url\":\"types/Internal.CreateVaultArgs.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"DepositERC721sArgs\",\"url\":\"types/Internal.DepositERC721sArgs.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"DepositERC1155sArgs\",\"url\":\"types/Internal.DepositERC1155sArgs.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.DepositERC1155sArgs.html#__type\",\"classes\":\"\",\"parent\":\"Internal.DepositERC1155sArgs\"},{\"kind\":1024,\"name\":\"vaultId\",\"url\":\"types/Internal.DepositERC1155sArgs.html#__type.vaultId\",\"classes\":\"\",\"parent\":\"Internal.DepositERC1155sArgs.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.DepositERC1155sArgs.html#__type.collection\",\"classes\":\"\",\"parent\":\"Internal.DepositERC1155sArgs.__type\"},{\"kind\":1024,\"name\":\"tokenIds\",\"url\":\"types/Internal.DepositERC1155sArgs.html#__type.tokenIds\",\"classes\":\"\",\"parent\":\"Internal.DepositERC1155sArgs.__type\"},{\"kind\":1024,\"name\":\"amounts\",\"url\":\"types/Internal.DepositERC1155sArgs.html#__type.amounts\",\"classes\":\"\",\"parent\":\"Internal.DepositERC1155sArgs.__type\"},{\"kind\":4194304,\"name\":\"BurnAndWithdrawArgs\",\"url\":\"types/Internal.BurnAndWithdrawArgs.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.BurnAndWithdrawArgs.html#__type\",\"classes\":\"\",\"parent\":\"Internal.BurnAndWithdrawArgs\"},{\"kind\":1024,\"name\":\"vaultId\",\"url\":\"types/Internal.BurnAndWithdrawArgs.html#__type.vaultId\",\"classes\":\"\",\"parent\":\"Internal.BurnAndWithdrawArgs.__type\"},{\"kind\":1024,\"name\":\"collections\",\"url\":\"types/Internal.BurnAndWithdrawArgs.html#__type.collections\",\"classes\":\"\",\"parent\":\"Internal.BurnAndWithdrawArgs.__type\"},{\"kind\":1024,\"name\":\"tokenIds\",\"url\":\"types/Internal.BurnAndWithdrawArgs.html#__type.tokenIds\",\"classes\":\"\",\"parent\":\"Internal.BurnAndWithdrawArgs.__type\"},{\"kind\":1024,\"name\":\"tokens\",\"url\":\"types/Internal.BurnAndWithdrawArgs.html#__type.tokens\",\"classes\":\"\",\"parent\":\"Internal.BurnAndWithdrawArgs.__type\"},{\"kind\":1024,\"name\":\"erc1155Collections\",\"url\":\"types/Internal.BurnAndWithdrawArgs.html#__type.erc1155Collections\",\"classes\":\"\",\"parent\":\"Internal.BurnAndWithdrawArgs.__type\"},{\"kind\":1024,\"name\":\"erc1155TokenIds\",\"url\":\"types/Internal.BurnAndWithdrawArgs.html#__type.erc1155TokenIds\",\"classes\":\"\",\"parent\":\"Internal.BurnAndWithdrawArgs.__type\"},{\"kind\":4194304,\"name\":\"wrapOldERC721Args\",\"url\":\"types/Internal.wrapOldERC721Args.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.wrapOldERC721Args.html#__type\",\"classes\":\"\",\"parent\":\"Internal.wrapOldERC721Args\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.wrapOldERC721Args.html#__type.collection\",\"classes\":\"\",\"parent\":\"Internal.wrapOldERC721Args.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.wrapOldERC721Args.html#__type.collection.__type-1\",\"classes\":\"\",\"parent\":\"Internal.wrapOldERC721Args.__type.collection\"},{\"kind\":1024,\"name\":\"contractData\",\"url\":\"types/Internal.wrapOldERC721Args.html#__type.collection.__type-1.contractData\",\"classes\":\"\",\"parent\":\"Internal.wrapOldERC721Args.__type.collection.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.wrapOldERC721Args.html#__type.collection.__type-1.contractData.__type-2\",\"classes\":\"\",\"parent\":\"Internal.wrapOldERC721Args.__type.collection.__type.contractData\"},{\"kind\":1024,\"name\":\"contractAddress\",\"url\":\"types/Internal.wrapOldERC721Args.html#__type.collection.__type-1.contractData.__type-2.contractAddress\",\"classes\":\"\",\"parent\":\"Internal.wrapOldERC721Args.__type.collection.__type.contractData.__type\"},{\"kind\":1024,\"name\":\"wrapperCollections\",\"url\":\"types/Internal.wrapOldERC721Args.html#__type.collection.__type-1.wrapperCollections\",\"classes\":\"\",\"parent\":\"Internal.wrapOldERC721Args.__type.collection.__type\"},{\"kind\":1024,\"name\":\"tokenId\",\"url\":\"types/Internal.wrapOldERC721Args.html#__type.tokenId\",\"classes\":\"\",\"parent\":\"Internal.wrapOldERC721Args.__type\"},{\"kind\":4194304,\"name\":\"Optional\",\"url\":\"types/Internal.Optional.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"SingleNftOfferInput\",\"url\":\"types/Internal.SingleNftOfferInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput\"},{\"kind\":1024,\"name\":\"aprBps\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.aprBps\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"borrowerAddress\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.borrowerAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"capacity\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.capacity\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"contractAddress\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.contractAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.duration\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"expirationTime\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.expirationTime\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"fee\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.fee\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"maxSeniorRepayment\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.maxSeniorRepayment\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"maxTrancheFloor\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.maxTrancheFloor\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"nftId\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.nftId\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"offerValidators\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.offerValidators\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAddress\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.principalAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAmount\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.principalAmount\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"requiresLiquidation\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.requiresLiquidation\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.SingleNftOfferInput.html#__type.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.SingleNftOfferInput.__type\"},{\"kind\":4194304,\"name\":\"MaxSeniorRepaymentArg\",\"url\":\"types/Internal.MaxSeniorRepaymentArg.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.MaxSeniorRepaymentArg.html#__type\",\"classes\":\"\",\"parent\":\"Internal.MaxSeniorRepaymentArg\"},{\"kind\":1024,\"name\":\"maxSeniorRepayment\",\"url\":\"types/Internal.MaxSeniorRepaymentArg.html#__type.maxSeniorRepayment\",\"classes\":\"\",\"parent\":\"Internal.MaxSeniorRepaymentArg.__type\"},{\"kind\":4194304,\"name\":\"CollectionOfferInput\",\"url\":\"types/Internal.CollectionOfferInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionOfferInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput\"},{\"kind\":1024,\"name\":\"aprBps\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.aprBps\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"borrowerAddress\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.borrowerAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"capacity\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.capacity\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"collectionId\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.collectionId\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"contractAddress\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.contractAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.duration\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"expirationTime\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.expirationTime\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"fee\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.fee\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"maxSeniorRepayment\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.maxSeniorRepayment\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"maxTrancheFloor\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.maxTrancheFloor\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"offerValidators\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.offerValidators\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAddress\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.principalAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAmount\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.principalAmount\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"requiresLiquidation\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.requiresLiquidation\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.CollectionOfferInput.html#__type.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferInput.__type\"},{\"kind\":4194304,\"name\":\"CollectionSignedOfferInput\",\"url\":\"types/Internal.CollectionSignedOfferInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput\"},{\"kind\":1024,\"name\":\"aprBps\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.aprBps\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"borrowerAddress\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.borrowerAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"capacity\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.capacity\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"collectionId\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.collectionId\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"contractAddress\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.contractAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.duration\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"expirationTime\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.expirationTime\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"fee\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.fee\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"maxSeniorRepayment\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.maxSeniorRepayment\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"maxTrancheFloor\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.maxTrancheFloor\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"offerHash\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.offerHash\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"offerId\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.offerId\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"offerValidators\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.offerValidators\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAddress\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.principalAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAmount\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.principalAmount\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"requiresLiquidation\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.requiresLiquidation\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"signature\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.signature\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.CollectionSignedOfferInput.html#__type.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.CollectionSignedOfferInput.__type\"},{\"kind\":4194304,\"name\":\"RenegotiationOfferInput\",\"url\":\"types/Internal.RenegotiationOfferInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput\"},{\"kind\":1024,\"name\":\"aprBps\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.aprBps\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.duration\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"expirationTime\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.expirationTime\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"feeAmount\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.feeAmount\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"isAddNewTranche\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.isAddNewTranche\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"loanId\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.loanId\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAmount\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.principalAmount\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"requiresLiquidation\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.requiresLiquidation\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"strictImprovement\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.strictImprovement\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"targetPrincipal\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.targetPrincipal\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"trancheIndex\",\"url\":\"types/Internal.RenegotiationOfferInput.html#__type.trancheIndex\",\"classes\":\"\",\"parent\":\"Internal.RenegotiationOfferInput.__type\"},{\"kind\":4194304,\"name\":\"SignedRenegotiationOfferInput\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput\"},{\"kind\":1024,\"name\":\"aprBps\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.aprBps\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.duration\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"expirationTime\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.expirationTime\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"feeAmount\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.feeAmount\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"isAddNewTranche\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.isAddNewTranche\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"loanId\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.loanId\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"offerHash\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.offerHash\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"principalAmount\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.principalAmount\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"renegotiationId\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.renegotiationId\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"requiresLiquidation\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.requiresLiquidation\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"signature\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.signature\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"strictImprovement\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.strictImprovement\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"targetPrincipal\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.targetPrincipal\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":1024,\"name\":\"trancheIndex\",\"url\":\"types/Internal.SignedRenegotiationOfferInput.html#__type.trancheIndex\",\"classes\":\"\",\"parent\":\"Internal.SignedRenegotiationOfferInput.__type\"},{\"kind\":4194304,\"name\":\"Signature\",\"url\":\"types/Internal.Signature.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"OffersSortInput\",\"url\":\"types/Internal.OffersSortInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.OffersSortInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.OffersSortInput\"},{\"kind\":1024,\"name\":\"durationOfInterest\",\"url\":\"types/Internal.OffersSortInput.html#__type.durationOfInterest\",\"classes\":\"\",\"parent\":\"Internal.OffersSortInput.__type\"},{\"kind\":1024,\"name\":\"field\",\"url\":\"types/Internal.OffersSortInput.html#__type.field\",\"classes\":\"\",\"parent\":\"Internal.OffersSortInput.__type\"},{\"kind\":1024,\"name\":\"order\",\"url\":\"types/Internal.OffersSortInput.html#__type.order\",\"classes\":\"\",\"parent\":\"Internal.OffersSortInput.__type\"},{\"kind\":1024,\"name\":\"principalOfInterest\",\"url\":\"types/Internal.OffersSortInput.html#__type.principalOfInterest\",\"classes\":\"\",\"parent\":\"Internal.OffersSortInput.__type\"},{\"kind\":4194304,\"name\":\"LoanSortInput\",\"url\":\"types/Internal.LoanSortInput.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.LoanSortInput.html#__type\",\"classes\":\"\",\"parent\":\"Internal.LoanSortInput\"},{\"kind\":1024,\"name\":\"field\",\"url\":\"types/Internal.LoanSortInput.html#__type.field\",\"classes\":\"\",\"parent\":\"Internal.LoanSortInput.__type\"},{\"kind\":1024,\"name\":\"order\",\"url\":\"types/Internal.LoanSortInput.html#__type.order\",\"classes\":\"\",\"parent\":\"Internal.LoanSortInput.__type\"},{\"kind\":4194304,\"name\":\"TermsFilter\",\"url\":\"types/Internal.TermsFilter.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.TermsFilter.html#__type\",\"classes\":\"\",\"parent\":\"Internal.TermsFilter\"},{\"kind\":1024,\"name\":\"aprBps\",\"url\":\"types/Internal.TermsFilter.html#__type.aprBps\",\"classes\":\"\",\"parent\":\"Internal.TermsFilter.__type\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"types/Internal.TermsFilter.html#__type.duration\",\"classes\":\"\",\"parent\":\"Internal.TermsFilter.__type\"},{\"kind\":1024,\"name\":\"fee\",\"url\":\"types/Internal.TermsFilter.html#__type.fee\",\"classes\":\"\",\"parent\":\"Internal.TermsFilter.__type\"},{\"kind\":1024,\"name\":\"maxPrincipal\",\"url\":\"types/Internal.TermsFilter.html#__type.maxPrincipal\",\"classes\":\"\",\"parent\":\"Internal.TermsFilter.__type\"},{\"kind\":1024,\"name\":\"netPrincipal\",\"url\":\"types/Internal.TermsFilter.html#__type.netPrincipal\",\"classes\":\"\",\"parent\":\"Internal.TermsFilter.__type\"},{\"kind\":1024,\"name\":\"principal\",\"url\":\"types/Internal.TermsFilter.html#__type.principal\",\"classes\":\"\",\"parent\":\"Internal.TermsFilter.__type\"},{\"kind\":1024,\"name\":\"remainingTime\",\"url\":\"types/Internal.TermsFilter.html#__type.remainingTime\",\"classes\":\"\",\"parent\":\"Internal.TermsFilter.__type\"},{\"kind\":4194304,\"name\":\"UserFilter\",\"url\":\"types/Internal.UserFilter.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.UserFilter.html#__type\",\"classes\":\"\",\"parent\":\"Internal.UserFilter\"},{\"kind\":1024,\"name\":\"onlyOrExclude\",\"url\":\"types/Internal.UserFilter.html#__type.onlyOrExclude\",\"classes\":\"\",\"parent\":\"Internal.UserFilter.__type\"},{\"kind\":1024,\"name\":\"userId\",\"url\":\"types/Internal.UserFilter.html#__type.userId\",\"classes\":\"\",\"parent\":\"Internal.UserFilter.__type\"},{\"kind\":128,\"name\":\"MslV4\",\"url\":\"classes/Internal.MslV4.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.MslV4.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"signOffer\",\"url\":\"classes/Internal.MslV4.html#signOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"signRenegotiationOffer\",\"url\":\"classes/Internal.MslV4.html#signRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"cancelOffer\",\"url\":\"classes/Internal.MslV4.html#cancelOffer-1\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"cancelAllOffers\",\"url\":\"classes/Internal.MslV4.html#cancelAllOffers-1\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"cancelRefinanceOffer\",\"url\":\"classes/Internal.MslV4.html#cancelRefinanceOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"cancelAllRenegotiations\",\"url\":\"classes/Internal.MslV4.html#cancelAllRenegotiations\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"emitLoan\",\"url\":\"classes/Internal.MslV4.html#emitLoan-1\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"repayLoan\",\"url\":\"classes/Internal.MslV4.html#repayLoan-1\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"getRemainingLockupSeconds\",\"url\":\"classes/Internal.MslV4.html#getRemainingLockupSeconds\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"isEndLockedUp\",\"url\":\"classes/Internal.MslV4.html#isEndLockedUp\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"refinanceBatch\",\"url\":\"classes/Internal.MslV4.html#refinanceBatch\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"refinanceFullLoan\",\"url\":\"classes/Internal.MslV4.html#refinanceFullLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"refinancePartialLoan\",\"url\":\"classes/Internal.MslV4.html#refinancePartialLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"addTranche\",\"url\":\"classes/Internal.MslV4.html#addTranche\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"refinanceFromOffers\",\"url\":\"classes/Internal.MslV4.html#refinanceFromOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"delegateMulticall\",\"url\":\"classes/Internal.MslV4.html#delegateMulticall\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"delegate\",\"url\":\"classes/Internal.MslV4.html#delegate\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"revokeDelegate\",\"url\":\"classes/Internal.MslV4.html#revokeDelegate\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"revokeDelegationsAndEmitLoan\",\"url\":\"classes/Internal.MslV4.html#revokeDelegationsAndEmitLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"liquidateLoan\",\"url\":\"classes/Internal.MslV4.html#liquidateLoan-1\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":2048,\"name\":\"decodeRepaymentCalldata\",\"url\":\"classes/Internal.MslV4.html#decodeRepaymentCalldata\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.MslV4.html#abi\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.MslV4.html#address\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.MslV4.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.MslV4.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.MslV4.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.MslV4.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.MslV4.html#contract\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite\"},{\"kind\":1024,\"name\":\"transferOwnership\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.transferOwnership\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.transferOwnership.__type-3\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.transferOwnership\"},{\"kind\":1024,\"name\":\"liquidateLoan\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.liquidateLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.liquidateLoan.__type-5\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.liquidateLoan\"},{\"kind\":1024,\"name\":\"onERC721Received\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.onERC721Received\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.onERC721Received.__type-7\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.onERC721Received\"},{\"kind\":1024,\"name\":\"addWhitelistedCallbackContract\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.addWhitelistedCallbackContract\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.addWhitelistedCallbackContract.__type-9\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.addWhitelistedCallbackContract\"},{\"kind\":1024,\"name\":\"approveSigner\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.approveSigner\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.approveSigner.__type-11\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.approveSigner\"},{\"kind\":1024,\"name\":\"cancelAllOffers\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelAllOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelAllOffers.__type-13\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.cancelAllOffers\"},{\"kind\":1024,\"name\":\"cancelAllRenegotiationOffers\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelAllRenegotiationOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelAllRenegotiationOffers.__type-15\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.cancelAllRenegotiationOffers\"},{\"kind\":1024,\"name\":\"cancelOffer\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelOffer.__type-17\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.cancelOffer\"},{\"kind\":1024,\"name\":\"cancelOffers\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelOffers.__type-19\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.cancelOffers\"},{\"kind\":1024,\"name\":\"cancelRenegotiationOffer\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelRenegotiationOffer.__type-21\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.cancelRenegotiationOffer\"},{\"kind\":1024,\"name\":\"cancelRenegotiationOffers\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelRenegotiationOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.cancelRenegotiationOffers.__type-23\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.cancelRenegotiationOffers\"},{\"kind\":1024,\"name\":\"loanLiquidated\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.loanLiquidated\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.loanLiquidated.__type-25\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.loanLiquidated\"},{\"kind\":1024,\"name\":\"removeWhitelistedCallbackContract\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.removeWhitelistedCallbackContract\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.removeWhitelistedCallbackContract.__type-27\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.removeWhitelistedCallbackContract\"},{\"kind\":1024,\"name\":\"setProtocolFee\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.setProtocolFee\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.setProtocolFee.__type-29\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.setProtocolFee\"},{\"kind\":1024,\"name\":\"updateImprovementMinimum\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.updateImprovementMinimum\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.updateImprovementMinimum.__type-31\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.updateImprovementMinimum\"},{\"kind\":1024,\"name\":\"updateLiquidationAuctionDuration\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.updateLiquidationAuctionDuration\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.updateLiquidationAuctionDuration.__type-33\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.updateLiquidationAuctionDuration\"},{\"kind\":1024,\"name\":\"updateLiquidationContract\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.updateLiquidationContract\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.updateLiquidationContract.__type-35\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.updateLiquidationContract\"},{\"kind\":1024,\"name\":\"updateProtocolFee\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.updateProtocolFee\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.updateProtocolFee.__type-37\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.updateProtocolFee\"},{\"kind\":1024,\"name\":\"emitLoan\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.emitLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.emitLoan.__type-39\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.emitLoan\"},{\"kind\":1024,\"name\":\"refinanceFull\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.refinanceFull\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.refinanceFull.__type-41\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.refinanceFull\"},{\"kind\":1024,\"name\":\"refinancePartial\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.refinancePartial\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.refinancePartial.__type-43\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.refinancePartial\"},{\"kind\":1024,\"name\":\"refinancePartialBatch\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.refinancePartialBatch\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.refinancePartialBatch.__type-45\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.refinancePartialBatch\"},{\"kind\":1024,\"name\":\"repayLoan\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.repayLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.repayLoan.__type-47\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.repayLoan\"},{\"kind\":1024,\"name\":\"setMaxSources\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.setMaxSources\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#safeContractWrite.__type-2.setMaxSources.__type-49\",\"classes\":\"\",\"parent\":\"Internal.MslV4.safeContractWrite.__type.setMaxSources\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.MslV4.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV4.html#parseEventLogs.__type-51\",\"classes\":\"\",\"parent\":\"Internal.MslV4.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.MslV4.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.MslV4\"},{\"kind\":128,\"name\":\"MslV5\",\"url\":\"classes/Internal.MslV5.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.MslV5.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"signOffer\",\"url\":\"classes/Internal.MslV5.html#signOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"signRenegotiationOffer\",\"url\":\"classes/Internal.MslV5.html#signRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"cancelOffer\",\"url\":\"classes/Internal.MslV5.html#cancelOffer-1\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"cancelAllOffers\",\"url\":\"classes/Internal.MslV5.html#cancelAllOffers-1\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"cancelRefinanceOffer\",\"url\":\"classes/Internal.MslV5.html#cancelRefinanceOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"cancelAllRenegotiations\",\"url\":\"classes/Internal.MslV5.html#cancelAllRenegotiations\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"emitLoan\",\"url\":\"classes/Internal.MslV5.html#emitLoan-1\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"revokeDelegationsAndEmitLoan\",\"url\":\"classes/Internal.MslV5.html#revokeDelegationsAndEmitLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"repayLoan\",\"url\":\"classes/Internal.MslV5.html#repayLoan-1\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"getRemainingLockupSeconds\",\"url\":\"classes/Internal.MslV5.html#getRemainingLockupSeconds\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"isEndLockedUp\",\"url\":\"classes/Internal.MslV5.html#isEndLockedUp\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"refinanceBatch\",\"url\":\"classes/Internal.MslV5.html#refinanceBatch\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"refinanceFullLoan\",\"url\":\"classes/Internal.MslV5.html#refinanceFullLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"refinancePartialLoan\",\"url\":\"classes/Internal.MslV5.html#refinancePartialLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"addTranche\",\"url\":\"classes/Internal.MslV5.html#addTranche\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"refinanceFromOffers\",\"url\":\"classes/Internal.MslV5.html#refinanceFromOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"delegateMulticall\",\"url\":\"classes/Internal.MslV5.html#delegateMulticall\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"delegate\",\"url\":\"classes/Internal.MslV5.html#delegate-1\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"revokeDelegate\",\"url\":\"classes/Internal.MslV5.html#revokeDelegate-1\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"liquidateLoan\",\"url\":\"classes/Internal.MslV5.html#liquidateLoan-1\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":2048,\"name\":\"decodeRepaymentCalldata\",\"url\":\"classes/Internal.MslV5.html#decodeRepaymentCalldata\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#decodeRepaymentCalldata.decodeRepaymentCalldata-1.__type-65\",\"classes\":\"\",\"parent\":\"Internal.MslV5.decodeRepaymentCalldata.decodeRepaymentCalldata\"},{\"kind\":1024,\"name\":\"data\",\"url\":\"classes/Internal.MslV5.html#decodeRepaymentCalldata.decodeRepaymentCalldata-1.__type-65.data\",\"classes\":\"\",\"parent\":\"Internal.MslV5.decodeRepaymentCalldata.decodeRepaymentCalldata.__type\"},{\"kind\":1024,\"name\":\"loan\",\"url\":\"classes/Internal.MslV5.html#decodeRepaymentCalldata.decodeRepaymentCalldata-1.__type-65.loan\",\"classes\":\"\",\"parent\":\"Internal.MslV5.decodeRepaymentCalldata.decodeRepaymentCalldata.__type\"},{\"kind\":1024,\"name\":\"borrowerSignature\",\"url\":\"classes/Internal.MslV5.html#decodeRepaymentCalldata.decodeRepaymentCalldata-1.__type-65.borrowerSignature\",\"classes\":\"\",\"parent\":\"Internal.MslV5.decodeRepaymentCalldata.decodeRepaymentCalldata.__type\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.MslV5.html#abi\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.MslV5.html#address\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.MslV5.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.MslV5.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.MslV5.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.MslV5.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.MslV5.html#contract\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite\"},{\"kind\":1024,\"name\":\"transferOwnership\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.transferOwnership\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.transferOwnership.__type-3\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.transferOwnership\"},{\"kind\":1024,\"name\":\"liquidateLoan\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.liquidateLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.liquidateLoan.__type-5\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.liquidateLoan\"},{\"kind\":1024,\"name\":\"onERC721Received\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.onERC721Received\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.onERC721Received.__type-7\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.onERC721Received\"},{\"kind\":1024,\"name\":\"addWhitelistedCallbackContract\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.addWhitelistedCallbackContract\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.addWhitelistedCallbackContract.__type-9\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.addWhitelistedCallbackContract\"},{\"kind\":1024,\"name\":\"cancelAllOffers\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelAllOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelAllOffers.__type-11\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.cancelAllOffers\"},{\"kind\":1024,\"name\":\"cancelAllRenegotiationOffers\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelAllRenegotiationOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelAllRenegotiationOffers.__type-13\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.cancelAllRenegotiationOffers\"},{\"kind\":1024,\"name\":\"cancelOffer\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelOffer.__type-15\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.cancelOffer\"},{\"kind\":1024,\"name\":\"cancelOffers\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelOffers.__type-17\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.cancelOffers\"},{\"kind\":1024,\"name\":\"cancelRenegotiationOffer\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelRenegotiationOffer.__type-19\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.cancelRenegotiationOffer\"},{\"kind\":1024,\"name\":\"cancelRenegotiationOffers\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelRenegotiationOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.cancelRenegotiationOffers.__type-21\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.cancelRenegotiationOffers\"},{\"kind\":1024,\"name\":\"loanLiquidated\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.loanLiquidated\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.loanLiquidated.__type-23\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.loanLiquidated\"},{\"kind\":1024,\"name\":\"removeWhitelistedCallbackContract\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.removeWhitelistedCallbackContract\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.removeWhitelistedCallbackContract.__type-25\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.removeWhitelistedCallbackContract\"},{\"kind\":1024,\"name\":\"setProtocolFee\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setProtocolFee\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setProtocolFee.__type-27\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.setProtocolFee\"},{\"kind\":1024,\"name\":\"updateImprovementMinimum\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.updateImprovementMinimum\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.updateImprovementMinimum.__type-29\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.updateImprovementMinimum\"},{\"kind\":1024,\"name\":\"updateLiquidationAuctionDuration\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.updateLiquidationAuctionDuration\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.updateLiquidationAuctionDuration.__type-31\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.updateLiquidationAuctionDuration\"},{\"kind\":1024,\"name\":\"updateLiquidationContract\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.updateLiquidationContract\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.updateLiquidationContract.__type-33\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.updateLiquidationContract\"},{\"kind\":1024,\"name\":\"updateProtocolFee\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.updateProtocolFee\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.updateProtocolFee.__type-35\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.updateProtocolFee\"},{\"kind\":1024,\"name\":\"emitLoan\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.emitLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.emitLoan.__type-37\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.emitLoan\"},{\"kind\":1024,\"name\":\"refinanceFull\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.refinanceFull\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.refinanceFull.__type-39\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.refinanceFull\"},{\"kind\":1024,\"name\":\"refinancePartial\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.refinancePartial\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.refinancePartial.__type-41\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.refinancePartial\"},{\"kind\":1024,\"name\":\"repayLoan\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.repayLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.repayLoan.__type-43\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.repayLoan\"},{\"kind\":1024,\"name\":\"setMaxSources\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setMaxSources\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setMaxSources.__type-45\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.setMaxSources\"},{\"kind\":1024,\"name\":\"multicall\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.multicall\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.multicall.__type-47\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.multicall\"},{\"kind\":1024,\"name\":\"delegate\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.delegate\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.delegate.__type-49\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.delegate\"},{\"kind\":1024,\"name\":\"revokeDelegate\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.revokeDelegate\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.revokeDelegate.__type-51\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.revokeDelegate\"},{\"kind\":1024,\"name\":\"executeFlashAction\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.executeFlashAction\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.executeFlashAction.__type-53\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.executeFlashAction\"},{\"kind\":1024,\"name\":\"extendLoan\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.extendLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.extendLoan.__type-55\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.extendLoan\"},{\"kind\":1024,\"name\":\"setDelegateRegistry\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setDelegateRegistry\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setDelegateRegistry.__type-57\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.setDelegateRegistry\"},{\"kind\":1024,\"name\":\"setFlashActionContract\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setFlashActionContract\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setFlashActionContract.__type-59\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.setFlashActionContract\"},{\"kind\":1024,\"name\":\"setMinLockPeriod\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setMinLockPeriod\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#safeContractWrite.__type-2.setMinLockPeriod.__type-61\",\"classes\":\"\",\"parent\":\"Internal.MslV5.safeContractWrite.__type.setMinLockPeriod\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.MslV5.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV5.html#parseEventLogs.__type-63\",\"classes\":\"\",\"parent\":\"Internal.MslV5.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.MslV5.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.MslV5\"},{\"kind\":128,\"name\":\"MslV6\",\"url\":\"classes/Internal.MslV6.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.MslV6.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"signOffer\",\"url\":\"classes/Internal.MslV6.html#signOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"signRenegotiationOffer\",\"url\":\"classes/Internal.MslV6.html#signRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"cancelOffer\",\"url\":\"classes/Internal.MslV6.html#cancelOffer-1\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"cancelAllOffers\",\"url\":\"classes/Internal.MslV6.html#cancelAllOffers-1\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"cancelRefinanceOffer\",\"url\":\"classes/Internal.MslV6.html#cancelRefinanceOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"cancelAllRenegotiations\",\"url\":\"classes/Internal.MslV6.html#cancelAllRenegotiations\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"emitLoan\",\"url\":\"classes/Internal.MslV6.html#emitLoan-1\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"revokeDelegationsAndEmitLoan\",\"url\":\"classes/Internal.MslV6.html#revokeDelegationsAndEmitLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"repayLoan\",\"url\":\"classes/Internal.MslV6.html#repayLoan-1\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"getRemainingLockupSeconds\",\"url\":\"classes/Internal.MslV6.html#getRemainingLockupSeconds\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"isEndLockedUp\",\"url\":\"classes/Internal.MslV6.html#isEndLockedUp\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"refinanceBatch\",\"url\":\"classes/Internal.MslV6.html#refinanceBatch\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"refinanceFullLoan\",\"url\":\"classes/Internal.MslV6.html#refinanceFullLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"refinancePartialLoan\",\"url\":\"classes/Internal.MslV6.html#refinancePartialLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"addTranche\",\"url\":\"classes/Internal.MslV6.html#addTranche\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"refinanceFromOffers\",\"url\":\"classes/Internal.MslV6.html#refinanceFromOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"delegateMulticall\",\"url\":\"classes/Internal.MslV6.html#delegateMulticall\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"delegate\",\"url\":\"classes/Internal.MslV6.html#delegate-1\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"revokeDelegate\",\"url\":\"classes/Internal.MslV6.html#revokeDelegate-1\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"liquidateLoan\",\"url\":\"classes/Internal.MslV6.html#liquidateLoan-1\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":2048,\"name\":\"decodeRepaymentCalldata\",\"url\":\"classes/Internal.MslV6.html#decodeRepaymentCalldata\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#decodeRepaymentCalldata.decodeRepaymentCalldata-1.__type-59\",\"classes\":\"\",\"parent\":\"Internal.MslV6.decodeRepaymentCalldata.decodeRepaymentCalldata\"},{\"kind\":1024,\"name\":\"data\",\"url\":\"classes/Internal.MslV6.html#decodeRepaymentCalldata.decodeRepaymentCalldata-1.__type-59.data\",\"classes\":\"\",\"parent\":\"Internal.MslV6.decodeRepaymentCalldata.decodeRepaymentCalldata.__type\"},{\"kind\":1024,\"name\":\"loan\",\"url\":\"classes/Internal.MslV6.html#decodeRepaymentCalldata.decodeRepaymentCalldata-1.__type-59.loan\",\"classes\":\"\",\"parent\":\"Internal.MslV6.decodeRepaymentCalldata.decodeRepaymentCalldata.__type\"},{\"kind\":1024,\"name\":\"borrowerSignature\",\"url\":\"classes/Internal.MslV6.html#decodeRepaymentCalldata.decodeRepaymentCalldata-1.__type-59.borrowerSignature\",\"classes\":\"\",\"parent\":\"Internal.MslV6.decodeRepaymentCalldata.decodeRepaymentCalldata.__type\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.MslV6.html#abi\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.MslV6.html#address\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.MslV6.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.MslV6.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.MslV6.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.MslV6.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.MslV6.html#contract\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite\"},{\"kind\":1024,\"name\":\"transferOwnership\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.transferOwnership\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.transferOwnership.__type-3\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.transferOwnership\"},{\"kind\":1024,\"name\":\"liquidateLoan\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.liquidateLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.liquidateLoan.__type-5\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.liquidateLoan\"},{\"kind\":1024,\"name\":\"onERC721Received\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.onERC721Received\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.onERC721Received.__type-7\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.onERC721Received\"},{\"kind\":1024,\"name\":\"addWhitelistedCallbackContract\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.addWhitelistedCallbackContract\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.addWhitelistedCallbackContract.__type-9\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.addWhitelistedCallbackContract\"},{\"kind\":1024,\"name\":\"cancelAllOffers\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.cancelAllOffers\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.cancelAllOffers.__type-11\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.cancelAllOffers\"},{\"kind\":1024,\"name\":\"cancelOffer\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.cancelOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.cancelOffer.__type-13\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.cancelOffer\"},{\"kind\":1024,\"name\":\"cancelRenegotiationOffer\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.cancelRenegotiationOffer\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.cancelRenegotiationOffer.__type-15\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.cancelRenegotiationOffer\"},{\"kind\":1024,\"name\":\"loanLiquidated\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.loanLiquidated\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.loanLiquidated.__type-17\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.loanLiquidated\"},{\"kind\":1024,\"name\":\"removeWhitelistedCallbackContract\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.removeWhitelistedCallbackContract\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.removeWhitelistedCallbackContract.__type-19\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.removeWhitelistedCallbackContract\"},{\"kind\":1024,\"name\":\"setProtocolFee\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.setProtocolFee\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.setProtocolFee.__type-21\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.setProtocolFee\"},{\"kind\":1024,\"name\":\"updateLiquidationAuctionDuration\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.updateLiquidationAuctionDuration\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.updateLiquidationAuctionDuration.__type-23\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.updateLiquidationAuctionDuration\"},{\"kind\":1024,\"name\":\"updateLiquidationContract\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.updateLiquidationContract\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.updateLiquidationContract.__type-25\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.updateLiquidationContract\"},{\"kind\":1024,\"name\":\"updateProtocolFee\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.updateProtocolFee\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.updateProtocolFee.__type-27\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.updateProtocolFee\"},{\"kind\":1024,\"name\":\"emitLoan\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.emitLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.emitLoan.__type-29\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.emitLoan\"},{\"kind\":1024,\"name\":\"refinanceFull\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.refinanceFull\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.refinanceFull.__type-31\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.refinanceFull\"},{\"kind\":1024,\"name\":\"refinancePartial\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.refinancePartial\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.refinancePartial.__type-33\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.refinancePartial\"},{\"kind\":1024,\"name\":\"repayLoan\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.repayLoan\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.repayLoan.__type-35\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.repayLoan\"},{\"kind\":1024,\"name\":\"multicall\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.multicall\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.multicall.__type-37\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.multicall\"},{\"kind\":1024,\"name\":\"delegate\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.delegate\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.delegate.__type-39\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.delegate\"},{\"kind\":1024,\"name\":\"revokeDelegate\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.revokeDelegate\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.revokeDelegate.__type-41\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.revokeDelegate\"},{\"kind\":1024,\"name\":\"executeFlashAction\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.executeFlashAction\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.executeFlashAction.__type-43\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.executeFlashAction\"},{\"kind\":1024,\"name\":\"setFlashActionContract\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.setFlashActionContract\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.setFlashActionContract.__type-45\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.setFlashActionContract\"},{\"kind\":1024,\"name\":\"setMinLockPeriod\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.setMinLockPeriod\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.setMinLockPeriod.__type-47\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.setMinLockPeriod\"},{\"kind\":1024,\"name\":\"requestTransferOwner\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.requestTransferOwner\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.requestTransferOwner.__type-49\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.requestTransferOwner\"},{\"kind\":1024,\"name\":\"updateMinImprovementApr\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.updateMinImprovementApr\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.updateMinImprovementApr.__type-51\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.updateMinImprovementApr\"},{\"kind\":1024,\"name\":\"addNewTranche\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.addNewTranche\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.addNewTranche.__type-53\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.addNewTranche\"},{\"kind\":1024,\"name\":\"refinanceFromLoanExecutionData\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.refinanceFromLoanExecutionData\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#safeContractWrite.__type-2.refinanceFromLoanExecutionData.__type-55\",\"classes\":\"\",\"parent\":\"Internal.MslV6.safeContractWrite.__type.refinanceFromLoanExecutionData\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.MslV6.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.MslV6.html#parseEventLogs.__type-57\",\"classes\":\"\",\"parent\":\"Internal.MslV6.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.MslV6.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.MslV6\"},{\"kind\":128,\"name\":\"AllV4\",\"url\":\"classes/Internal.AllV4.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":1024,\"name\":\"LOAN_SETTLEMENT_ENCODE_TYPES\",\"url\":\"classes/Internal.AllV4.html#LOAN_SETTLEMENT_ENCODE_TYPES\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.AllV4.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":2048,\"name\":\"placeBid\",\"url\":\"classes/Internal.AllV4.html#placeBid-1\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":2048,\"name\":\"getRemainingLockupSeconds\",\"url\":\"classes/Internal.AllV4.html#getRemainingLockupSeconds\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":2048,\"name\":\"settleAuctionWithBuyout\",\"url\":\"classes/Internal.AllV4.html#settleAuctionWithBuyout\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":2048,\"name\":\"settleAuction\",\"url\":\"classes/Internal.AllV4.html#settleAuction-1\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.AllV4.html#abi\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.AllV4.html#address\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.AllV4.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.AllV4.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.AllV4.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.AllV4.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.AllV4.html#contract\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite\"},{\"kind\":1024,\"name\":\"transferOwnership\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.transferOwnership\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.transferOwnership.__type-3\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type.transferOwnership\"},{\"kind\":1024,\"name\":\"addLoanContract\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.addLoanContract\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.addLoanContract.__type-5\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type.addLoanContract\"},{\"kind\":1024,\"name\":\"liquidateLoan\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.liquidateLoan\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.liquidateLoan.__type-7\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type.liquidateLoan\"},{\"kind\":1024,\"name\":\"onERC721Received\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.onERC721Received\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.onERC721Received.__type-9\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type.onERC721Received\"},{\"kind\":1024,\"name\":\"placeBid\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.placeBid\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.placeBid.__type-11\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type.placeBid\"},{\"kind\":1024,\"name\":\"removeLoanContract\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.removeLoanContract\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.removeLoanContract.__type-13\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type.removeLoanContract\"},{\"kind\":1024,\"name\":\"settleAuction\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.settleAuction\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.settleAuction.__type-15\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type.settleAuction\"},{\"kind\":1024,\"name\":\"updateTriggerFee\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.updateTriggerFee\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#safeContractWrite.__type-2.updateTriggerFee.__type-17\",\"classes\":\"\",\"parent\":\"Internal.AllV4.safeContractWrite.__type.updateTriggerFee\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.AllV4.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV4.html#parseEventLogs.__type-19\",\"classes\":\"\",\"parent\":\"Internal.AllV4.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.AllV4.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.AllV4\"},{\"kind\":128,\"name\":\"AllV5\",\"url\":\"classes/Internal.AllV5.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.AllV5.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":2048,\"name\":\"placeBid\",\"url\":\"classes/Internal.AllV5.html#placeBid-1\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":2048,\"name\":\"getRemainingLockupSeconds\",\"url\":\"classes/Internal.AllV5.html#getRemainingLockupSeconds\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":2048,\"name\":\"settleAuctionWithBuyout\",\"url\":\"classes/Internal.AllV5.html#settleAuctionWithBuyout\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":2048,\"name\":\"settleAuction\",\"url\":\"classes/Internal.AllV5.html#settleAuction-1\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.AllV5.html#abi\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.AllV5.html#address\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.AllV5.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.AllV5.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.AllV5.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.AllV5.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.AllV5.html#contract\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite\"},{\"kind\":1024,\"name\":\"transferOwnership\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.transferOwnership\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.transferOwnership.__type-3\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type.transferOwnership\"},{\"kind\":1024,\"name\":\"addLoanContract\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.addLoanContract\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.addLoanContract.__type-5\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type.addLoanContract\"},{\"kind\":1024,\"name\":\"liquidateLoan\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.liquidateLoan\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.liquidateLoan.__type-7\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type.liquidateLoan\"},{\"kind\":1024,\"name\":\"onERC721Received\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.onERC721Received\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.onERC721Received.__type-9\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type.onERC721Received\"},{\"kind\":1024,\"name\":\"placeBid\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.placeBid\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.placeBid.__type-11\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type.placeBid\"},{\"kind\":1024,\"name\":\"removeLoanContract\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.removeLoanContract\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.removeLoanContract.__type-13\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type.removeLoanContract\"},{\"kind\":1024,\"name\":\"settleAuction\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.settleAuction\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.settleAuction.__type-15\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type.settleAuction\"},{\"kind\":1024,\"name\":\"updateTriggerFee\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.updateTriggerFee\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.updateTriggerFee.__type-17\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type.updateTriggerFee\"},{\"kind\":1024,\"name\":\"updateLiquidationDistributor\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.updateLiquidationDistributor\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#safeContractWrite.__type-2.updateLiquidationDistributor.__type-19\",\"classes\":\"\",\"parent\":\"Internal.AllV5.safeContractWrite.__type.updateLiquidationDistributor\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.AllV5.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV5.html#parseEventLogs.__type-21\",\"classes\":\"\",\"parent\":\"Internal.AllV5.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.AllV5.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.AllV5\"},{\"kind\":128,\"name\":\"AllV6\",\"url\":\"classes/Internal.AllV6.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.AllV6.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":2048,\"name\":\"placeBid\",\"url\":\"classes/Internal.AllV6.html#placeBid-1\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":2048,\"name\":\"getRemainingLockupSeconds\",\"url\":\"classes/Internal.AllV6.html#getRemainingLockupSeconds\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":2048,\"name\":\"settleAuctionWithBuyout\",\"url\":\"classes/Internal.AllV6.html#settleAuctionWithBuyout\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":2048,\"name\":\"settleAuction\",\"url\":\"classes/Internal.AllV6.html#settleAuction-1\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.AllV6.html#abi\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.AllV6.html#address\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.AllV6.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.AllV6.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.AllV6.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.AllV6.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.AllV6.html#contract\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite\"},{\"kind\":1024,\"name\":\"transferOwnership\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.transferOwnership\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.transferOwnership.__type-3\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.transferOwnership\"},{\"kind\":1024,\"name\":\"addLoanContract\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.addLoanContract\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.addLoanContract.__type-5\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.addLoanContract\"},{\"kind\":1024,\"name\":\"liquidateLoan\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.liquidateLoan\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.liquidateLoan.__type-7\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.liquidateLoan\"},{\"kind\":1024,\"name\":\"onERC721Received\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.onERC721Received\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.onERC721Received.__type-9\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.onERC721Received\"},{\"kind\":1024,\"name\":\"placeBid\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.placeBid\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.placeBid.__type-11\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.placeBid\"},{\"kind\":1024,\"name\":\"removeLoanContract\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.removeLoanContract\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.removeLoanContract.__type-13\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.removeLoanContract\"},{\"kind\":1024,\"name\":\"settleAuction\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.settleAuction\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.settleAuction.__type-15\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.settleAuction\"},{\"kind\":1024,\"name\":\"updateTriggerFee\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.updateTriggerFee\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.updateTriggerFee.__type-17\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.updateTriggerFee\"},{\"kind\":1024,\"name\":\"updateLiquidationDistributor\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.updateLiquidationDistributor\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.updateLiquidationDistributor.__type-19\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.updateLiquidationDistributor\"},{\"kind\":1024,\"name\":\"setTimeForMainLenderToBuy\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.setTimeForMainLenderToBuy\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.setTimeForMainLenderToBuy.__type-21\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.setTimeForMainLenderToBuy\"},{\"kind\":1024,\"name\":\"settleWithBuyout\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.settleWithBuyout\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#safeContractWrite.__type-2.settleWithBuyout.__type-23\",\"classes\":\"\",\"parent\":\"Internal.AllV6.safeContractWrite.__type.settleWithBuyout\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.AllV6.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.AllV6.html#parseEventLogs.__type-25\",\"classes\":\"\",\"parent\":\"Internal.AllV6.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.AllV6.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.AllV6\"},{\"kind\":128,\"name\":\"UserVaultV5\",\"url\":\"classes/Internal.UserVaultV5.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.UserVaultV5.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":2048,\"name\":\"burnAndWithdraw\",\"url\":\"classes/Internal.UserVaultV5.html#burnAndWithdraw-1\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":2048,\"name\":\"createVault\",\"url\":\"classes/Internal.UserVaultV5.html#createVault\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":2048,\"name\":\"depositERC721s\",\"url\":\"classes/Internal.UserVaultV5.html#depositERC721s-1\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":2048,\"name\":\"depositERC1155s\",\"url\":\"classes/Internal.UserVaultV5.html#depositERC1155s\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.UserVaultV5.html#abi\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.UserVaultV5.html#address\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.UserVaultV5.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.UserVaultV5.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.UserVaultV5.html#contract\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite\"},{\"kind\":1024,\"name\":\"transferOwnership\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.transferOwnership\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.transferOwnership.__type-3\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.transferOwnership\"},{\"kind\":1024,\"name\":\"onERC721Received\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.onERC721Received\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.onERC721Received.__type-5\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.onERC721Received\"},{\"kind\":1024,\"name\":\"approve\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.approve\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.approve.__type-7\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.approve\"},{\"kind\":1024,\"name\":\"transferFrom\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.transferFrom\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.transferFrom.__type-9\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.transferFrom\"},{\"kind\":1024,\"name\":\"safeTransferFrom\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.safeTransferFrom\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.safeTransferFrom.__type-11\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.safeTransferFrom\"},{\"kind\":1024,\"name\":\"setApprovalForAll\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.setApprovalForAll\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.setApprovalForAll.__type-13\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.setApprovalForAll\"},{\"kind\":1024,\"name\":\"mint\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.mint\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.mint.__type-15\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.mint\"},{\"kind\":1024,\"name\":\"burn\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.burn\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.burn.__type-17\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.burn\"},{\"kind\":1024,\"name\":\"burnAndWithdraw\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.burnAndWithdraw\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.burnAndWithdraw.__type-19\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.burnAndWithdraw\"},{\"kind\":1024,\"name\":\"depositERC20\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.depositERC20\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.depositERC20.__type-21\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.depositERC20\"},{\"kind\":1024,\"name\":\"depositERC721\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.depositERC721\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.depositERC721.__type-23\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.depositERC721\"},{\"kind\":1024,\"name\":\"depositERC721s\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.depositERC721s\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.depositERC721s.__type-25\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.depositERC721s\"},{\"kind\":1024,\"name\":\"depositEth\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.depositEth\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.depositEth.__type-27\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.depositEth\"},{\"kind\":1024,\"name\":\"withdrawERC20\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawERC20\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawERC20.__type-29\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.withdrawERC20\"},{\"kind\":1024,\"name\":\"withdrawERC20s\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawERC20s\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawERC20s.__type-31\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.withdrawERC20s\"},{\"kind\":1024,\"name\":\"withdrawERC721\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawERC721\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawERC721.__type-33\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.withdrawERC721\"},{\"kind\":1024,\"name\":\"withdrawERC721s\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawERC721s\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawERC721s.__type-35\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.withdrawERC721s\"},{\"kind\":1024,\"name\":\"withdrawEth\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawEth\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#safeContractWrite.__type-2.withdrawEth.__type-37\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.safeContractWrite.__type.withdrawEth\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.UserVaultV5.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV5.html#parseEventLogs.__type-39\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.UserVaultV5.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV5\"},{\"kind\":128,\"name\":\"UserVaultV6\",\"url\":\"classes/Internal.UserVaultV6.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.UserVaultV6.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":2048,\"name\":\"burnAndWithdraw\",\"url\":\"classes/Internal.UserVaultV6.html#burnAndWithdraw-1\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":2048,\"name\":\"createVault\",\"url\":\"classes/Internal.UserVaultV6.html#createVault\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":2048,\"name\":\"depositERC721s\",\"url\":\"classes/Internal.UserVaultV6.html#depositERC721s-1\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":2048,\"name\":\"depositERC1155s\",\"url\":\"classes/Internal.UserVaultV6.html#depositERC1155s-1\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.UserVaultV6.html#abi\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.UserVaultV6.html#address\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.UserVaultV6.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.UserVaultV6.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.UserVaultV6.html#contract\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite\"},{\"kind\":1024,\"name\":\"transferOwnership\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.transferOwnership\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.transferOwnership.__type-3\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.transferOwnership\"},{\"kind\":1024,\"name\":\"onERC721Received\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.onERC721Received\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.onERC721Received.__type-5\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.onERC721Received\"},{\"kind\":1024,\"name\":\"approve\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.approve\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.approve.__type-7\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.approve\"},{\"kind\":1024,\"name\":\"transferFrom\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.transferFrom\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.transferFrom.__type-9\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.transferFrom\"},{\"kind\":1024,\"name\":\"safeTransferFrom\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.safeTransferFrom\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.safeTransferFrom.__type-11\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.safeTransferFrom\"},{\"kind\":1024,\"name\":\"setApprovalForAll\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.setApprovalForAll\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.setApprovalForAll.__type-13\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.setApprovalForAll\"},{\"kind\":1024,\"name\":\"mint\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.mint\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.mint.__type-15\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.mint\"},{\"kind\":1024,\"name\":\"burn\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.burn\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.burn.__type-17\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.burn\"},{\"kind\":1024,\"name\":\"burnAndWithdraw\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.burnAndWithdraw\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.burnAndWithdraw.__type-19\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.burnAndWithdraw\"},{\"kind\":1024,\"name\":\"depositERC20\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC20\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC20.__type-21\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.depositERC20\"},{\"kind\":1024,\"name\":\"depositERC721\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC721\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC721.__type-23\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.depositERC721\"},{\"kind\":1024,\"name\":\"depositERC721s\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC721s\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC721s.__type-25\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.depositERC721s\"},{\"kind\":1024,\"name\":\"depositEth\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositEth\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositEth.__type-27\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.depositEth\"},{\"kind\":1024,\"name\":\"withdrawERC20\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC20\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC20.__type-29\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.withdrawERC20\"},{\"kind\":1024,\"name\":\"withdrawERC20s\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC20s\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC20s.__type-31\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.withdrawERC20s\"},{\"kind\":1024,\"name\":\"withdrawERC721\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC721\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC721.__type-33\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.withdrawERC721\"},{\"kind\":1024,\"name\":\"withdrawERC721s\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC721s\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC721s.__type-35\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.withdrawERC721s\"},{\"kind\":1024,\"name\":\"withdrawEth\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawEth\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawEth.__type-37\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.withdrawEth\"},{\"kind\":1024,\"name\":\"depositERC1155\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC1155\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC1155.__type-39\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.depositERC1155\"},{\"kind\":1024,\"name\":\"depositERC1155s\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC1155s\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.depositERC1155s.__type-41\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.depositERC1155s\"},{\"kind\":1024,\"name\":\"withdrawERC1155\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC1155\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC1155.__type-43\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.withdrawERC1155\"},{\"kind\":1024,\"name\":\"withdrawERC1155s\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC1155s\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.withdrawERC1155s.__type-45\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.withdrawERC1155s\"},{\"kind\":1024,\"name\":\"onERC1155BatchReceived\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.onERC1155BatchReceived\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.onERC1155BatchReceived.__type-47\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.onERC1155BatchReceived\"},{\"kind\":1024,\"name\":\"onERC1155Received\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.onERC1155Received\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#safeContractWrite.__type-2.onERC1155Received.__type-49\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.safeContractWrite.__type.onERC1155Received\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.UserVaultV6.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.UserVaultV6.html#parseEventLogs.__type-51\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.UserVaultV6.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.UserVaultV6\"},{\"kind\":128,\"name\":\"PurchaseBundler\",\"url\":\"classes/Internal.PurchaseBundler.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":1024,\"name\":\"EXECUTION_INFO\",\"url\":\"classes/Internal.PurchaseBundler.html#EXECUTION_INFO\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#EXECUTION_INFO.__type\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.EXECUTION_INFO\"},{\"kind\":1024,\"name\":\"name\",\"url\":\"classes/Internal.PurchaseBundler.html#EXECUTION_INFO.__type.name\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.EXECUTION_INFO.__type\"},{\"kind\":1024,\"name\":\"type\",\"url\":\"classes/Internal.PurchaseBundler.html#EXECUTION_INFO.__type.type\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.EXECUTION_INFO.__type\"},{\"kind\":1024,\"name\":\"components\",\"url\":\"classes/Internal.PurchaseBundler.html#EXECUTION_INFO.__type.components\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.EXECUTION_INFO.__type\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.PurchaseBundler.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":1024,\"name\":\"msl\",\"url\":\"classes/Internal.PurchaseBundler.html#msl\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":2048,\"name\":\"executeSell\",\"url\":\"classes/Internal.PurchaseBundler.html#executeSell-1\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.PurchaseBundler.html#abi\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.PurchaseBundler.html#address\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.PurchaseBundler.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#bcClient.__type-1\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.PurchaseBundler.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#wallet.__type-2\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.PurchaseBundler.html#contract\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite\"},{\"kind\":1024,\"name\":\"transferOwnership\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.transferOwnership\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.transferOwnership.__type-4\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.transferOwnership\"},{\"kind\":1024,\"name\":\"onERC721Received\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.onERC721Received\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.onERC721Received.__type-6\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.onERC721Received\"},{\"kind\":1024,\"name\":\"setProtocolFee\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.setProtocolFee\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.setProtocolFee.__type-8\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.setProtocolFee\"},{\"kind\":1024,\"name\":\"updateProtocolFee\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.updateProtocolFee\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.updateProtocolFee.__type-10\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.updateProtocolFee\"},{\"kind\":1024,\"name\":\"afterNFTTransfer\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.afterNFTTransfer\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.afterNFTTransfer.__type-12\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.afterNFTTransfer\"},{\"kind\":1024,\"name\":\"afterPrincipalTransfer\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.afterPrincipalTransfer\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.afterPrincipalTransfer.__type-14\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.afterPrincipalTransfer\"},{\"kind\":1024,\"name\":\"buy\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.buy\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.buy.__type-16\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.buy\"},{\"kind\":1024,\"name\":\"finalUpdateMultiSourceLoanAddress\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.finalUpdateMultiSourceLoanAddress\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.finalUpdateMultiSourceLoanAddress.__type-18\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.finalUpdateMultiSourceLoanAddress\"},{\"kind\":1024,\"name\":\"sell\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.sell\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.sell.__type-20\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.sell\"},{\"kind\":1024,\"name\":\"updateMultiSourceLoanAddressFirst\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.updateMultiSourceLoanAddressFirst\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.updateMultiSourceLoanAddressFirst.__type-22\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.updateMultiSourceLoanAddressFirst\"},{\"kind\":1024,\"name\":\"requestTransferOwner\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.requestTransferOwner\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.requestTransferOwner.__type-24\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.requestTransferOwner\"},{\"kind\":1024,\"name\":\"executeSell\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.executeSell\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.executeSell.__type-26\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.executeSell\"},{\"kind\":1024,\"name\":\"setTaxes\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.setTaxes\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.setTaxes.__type-28\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.setTaxes\"},{\"kind\":1024,\"name\":\"updateTaxes\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.updateTaxes\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#safeContractWrite.__type-3.updateTaxes.__type-30\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.safeContractWrite.__type.updateTaxes\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.PurchaseBundler.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.PurchaseBundler.html#parseEventLogs.__type-32\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.PurchaseBundler.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.PurchaseBundler\"},{\"kind\":128,\"name\":\"BaseContract\",\"url\":\"classes/Internal.BaseContract.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.BaseContract.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.BaseContract\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.BaseContract.html#abi\",\"classes\":\"\",\"parent\":\"Internal.BaseContract\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.BaseContract.html#address\",\"classes\":\"\",\"parent\":\"Internal.BaseContract\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.BaseContract.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.BaseContract\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.BaseContract.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.BaseContract.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.BaseContract.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.BaseContract\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.BaseContract.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.BaseContract.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.BaseContract.html#contract\",\"classes\":\"\",\"parent\":\"Internal.BaseContract\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.BaseContract.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.BaseContract\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.BaseContract.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.BaseContract\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.BaseContract.html#parseEventLogs.__type-2\",\"classes\":\"\",\"parent\":\"Internal.BaseContract.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.BaseContract.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.BaseContract\"},{\"kind\":4194304,\"name\":\"Erc721Or1155ABI\",\"url\":\"types/Internal.Erc721Or1155ABI.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":128,\"name\":\"OldERC721Wrapper\",\"url\":\"classes/Internal.OldERC721Wrapper.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Internal.OldERC721Wrapper.html#constructor\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":2048,\"name\":\"wrapOldERC721\",\"url\":\"classes/Internal.OldERC721Wrapper.html#wrapOldERC721\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":2048,\"name\":\"unwrap\",\"url\":\"classes/Internal.OldERC721Wrapper.html#unwrap-1\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":1024,\"name\":\"abi\",\"url\":\"classes/Internal.OldERC721Wrapper.html#abi\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"classes/Internal.OldERC721Wrapper.html#address\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":1024,\"name\":\"bcClient\",\"url\":\"classes/Internal.OldERC721Wrapper.html#bcClient\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#bcClient.__type\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.bcClient\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"classes/Internal.OldERC721Wrapper.html#wallet\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#wallet.__type-1\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.wallet\"},{\"kind\":1024,\"name\":\"contract\",\"url\":\"classes/Internal.OldERC721Wrapper.html#contract\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":1024,\"name\":\"safeContractWrite\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite\"},{\"kind\":1024,\"name\":\"approve\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.approve\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.approve.__type-3\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type.approve\"},{\"kind\":1024,\"name\":\"transferFrom\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.transferFrom\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.transferFrom.__type-5\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type.transferFrom\"},{\"kind\":1024,\"name\":\"safeTransferFrom\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.safeTransferFrom\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.safeTransferFrom.__type-7\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type.safeTransferFrom\"},{\"kind\":1024,\"name\":\"setApprovalForAll\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.setApprovalForAll\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.setApprovalForAll.__type-9\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type.setApprovalForAll\"},{\"kind\":1024,\"name\":\"unwrap\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.unwrap\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.unwrap.__type-11\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type.unwrap\"},{\"kind\":1024,\"name\":\"unwrapBatch\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.unwrapBatch\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.unwrapBatch.__type-13\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type.unwrapBatch\"},{\"kind\":1024,\"name\":\"wrap\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.wrap\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.wrap.__type-15\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type.wrap\"},{\"kind\":1024,\"name\":\"wrapBatch\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.wrapBatch\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#safeContractWrite.__type-2.wrapBatch.__type-17\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.safeContractWrite.__type.wrapBatch\"},{\"kind\":1024,\"name\":\"parseEventLogs\",\"url\":\"classes/Internal.OldERC721Wrapper.html#parseEventLogs\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"classes/Internal.OldERC721Wrapper.html#parseEventLogs.__type-19\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper.parseEventLogs\"},{\"kind\":2048,\"name\":\"sendTransactionData\",\"url\":\"classes/Internal.OldERC721Wrapper.html#sendTransactionData\",\"classes\":\"\",\"parent\":\"Internal.OldERC721Wrapper\"},{\"kind\":4194304,\"name\":\"Props\",\"url\":\"types/Internal.Props.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.Props.html#__type\",\"classes\":\"\",\"parent\":\"Internal.Props\"},{\"kind\":1024,\"name\":\"apiClient\",\"url\":\"types/Internal.Props.html#__type.apiClient\",\"classes\":\"\",\"parent\":\"Internal.Props.__type\"},{\"kind\":1024,\"name\":\"wallet\",\"url\":\"types/Internal.Props.html#__type.wallet\",\"classes\":\"\",\"parent\":\"Internal.Props.__type\"},{\"kind\":4194304,\"name\":\"GenerateCollectionOfferHashMutation\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type\"},{\"kind\":1024,\"name\":\"offer\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"offerHash\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.offerHash\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"offerId\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.offerId\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"borrowerAddress\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.borrowerAddress\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"validators\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.validators\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.collection\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.collection.__type-2\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type.collection\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.collection.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type.collection.__type\"},{\"kind\":1024,\"name\":\"contractData\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.collection.__type-2.contractData\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type.collection.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.collection.__type-2.contractData.__type-3\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type.collection.__type.contractData\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.collection.__type-2.contractData.__type-3.__typename-3\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type.collection.__type.contractData.__type\"},{\"kind\":1024,\"name\":\"contractAddress\",\"url\":\"types/Internal.GenerateCollectionOfferHashMutation.html#__type.offer.__type-1.collection.__type-2.contractData.__type-3.contractAddress\",\"classes\":\"\",\"parent\":\"Internal.GenerateCollectionOfferHashMutation.__type.offer.__type.collection.__type.contractData.__type\"},{\"kind\":4194304,\"name\":\"SaveCollectionOfferMutation\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type\"},{\"kind\":1024,\"name\":\"offer\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.id\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"status\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.status\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.collection\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.collection.__type-2\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type.collection\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.collection.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type.collection.__type\"},{\"kind\":1024,\"name\":\"contractData\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.collection.__type-2.contractData\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type.collection.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.collection.__type-2.contractData.__type-3\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type.collection.__type.contractData\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.collection.__type-2.contractData.__type-3.__typename-3\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type.collection.__type.contractData.__type\"},{\"kind\":1024,\"name\":\"contractAddress\",\"url\":\"types/Internal.SaveCollectionOfferMutation.html#__type.offer.__type-1.collection.__type-2.contractData.__type-3.contractAddress\",\"classes\":\"\",\"parent\":\"Internal.SaveCollectionOfferMutation.__type.offer.__type.collection.__type.contractData.__type\"},{\"kind\":4194304,\"name\":\"GenerateSingleNftOfferHashMutation\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type\"},{\"kind\":1024,\"name\":\"offer\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"offerHash\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.offerHash\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"offerId\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.offerId\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"borrowerAddress\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.borrowerAddress\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"validators\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.validators\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"nft\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.nft\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.nft.__type-2\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type.nft\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.nft.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type.nft.__type\"},{\"kind\":1024,\"name\":\"tokenId\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.nft.__type-2.tokenId\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type.nft.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.GenerateSingleNftOfferHashMutation.html#__type.offer.__type-1.nft.__type-2.collection\",\"classes\":\"\",\"parent\":\"Internal.GenerateSingleNftOfferHashMutation.__type.offer.__type.nft.__type\"},{\"kind\":4194304,\"name\":\"SaveSingleNftOfferMutation\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type\"},{\"kind\":1024,\"name\":\"offer\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer.__type-1\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type.offer\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer.__type-1.id\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"status\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer.__type-1.status\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"nft\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer.__type-1.nft\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type.offer.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer.__type-1.nft.__type-2\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type.offer.__type.nft\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer.__type-1.nft.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type.offer.__type.nft.__type\"},{\"kind\":1024,\"name\":\"tokenId\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer.__type-1.nft.__type-2.tokenId\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type.offer.__type.nft.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.SaveSingleNftOfferMutation.html#__type.offer.__type-1.nft.__type-2.collection\",\"classes\":\"\",\"parent\":\"Internal.SaveSingleNftOfferMutation.__type.offer.__type.nft.__type\"},{\"kind\":4194304,\"name\":\"PublishSellAndRepayOrderMutation\",\"url\":\"types/Internal.PublishSellAndRepayOrderMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.PublishSellAndRepayOrderMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.PublishSellAndRepayOrderMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.PublishSellAndRepayOrderMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.PublishSellAndRepayOrderMutation.__type\"},{\"kind\":1024,\"name\":\"result\",\"url\":\"types/Internal.PublishSellAndRepayOrderMutation.html#__type.result\",\"classes\":\"\",\"parent\":\"Internal.PublishSellAndRepayOrderMutation.__type\"},{\"kind\":4194304,\"name\":\"GenerateRenegotiationOfferHashMutation\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type\"},{\"kind\":1024,\"name\":\"offer\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"loanId\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.loanId\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"renegotiationId\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.renegotiationId\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"offerHash\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.offerHash\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type\"},{\"kind\":1024,\"name\":\"nft\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.nft\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.nft.__type-2\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type.nft\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.nft.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type.nft.__type\"},{\"kind\":1024,\"name\":\"tokenId\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.nft.__type-2.tokenId\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type.nft.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.GenerateRenegotiationOfferHashMutation.html#__type.offer.__type-1.nft.__type-2.collection\",\"classes\":\"\",\"parent\":\"Internal.GenerateRenegotiationOfferHashMutation.__type.offer.__type.nft.__type\"},{\"kind\":4194304,\"name\":\"SaveRenegotiationOfferMutation\",\"url\":\"types/Internal.SaveRenegotiationOfferMutation.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SaveRenegotiationOfferMutation.html#__type\",\"classes\":\"\",\"parent\":\"Internal.SaveRenegotiationOfferMutation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.SaveRenegotiationOfferMutation.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.SaveRenegotiationOfferMutation.__type\"},{\"kind\":1024,\"name\":\"renegotiation\",\"url\":\"types/Internal.SaveRenegotiationOfferMutation.html#__type.renegotiation\",\"classes\":\"\",\"parent\":\"Internal.SaveRenegotiationOfferMutation.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.SaveRenegotiationOfferMutation.html#__type.renegotiation.__type-1\",\"classes\":\"\",\"parent\":\"Internal.SaveRenegotiationOfferMutation.__type.renegotiation\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.SaveRenegotiationOfferMutation.html#__type.renegotiation.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.SaveRenegotiationOfferMutation.__type.renegotiation.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.SaveRenegotiationOfferMutation.html#__type.renegotiation.__type-1.id\",\"classes\":\"\",\"parent\":\"Internal.SaveRenegotiationOfferMutation.__type.renegotiation.__type\"},{\"kind\":1024,\"name\":\"status\",\"url\":\"types/Internal.SaveRenegotiationOfferMutation.html#__type.renegotiation.__type-1.status\",\"classes\":\"\",\"parent\":\"Internal.SaveRenegotiationOfferMutation.__type.renegotiation.__type\"},{\"kind\":4194304,\"name\":\"CollectionsQuery\",\"url\":\"types/Internal.CollectionsQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionsQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.CollectionsQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type\"},{\"kind\":1024,\"name\":\"collections\",\"url\":\"types/Internal.CollectionsQuery.html#__type.collections\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionsQuery.html#__type.collections.__type-1\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type.collections\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.CollectionsQuery.html#__type.collections.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type.collections.__type\"},{\"kind\":1024,\"name\":\"pageInfo\",\"url\":\"types/Internal.CollectionsQuery.html#__type.collections.__type-1.pageInfo\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type.collections.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionsQuery.html#__type.collections.__type-1.pageInfo.__type-2\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type.collections.__type.pageInfo\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.CollectionsQuery.html#__type.collections.__type-1.pageInfo.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type.collections.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"endCursor\",\"url\":\"types/Internal.CollectionsQuery.html#__type.collections.__type-1.pageInfo.__type-2.endCursor\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type.collections.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"hasNextPage\",\"url\":\"types/Internal.CollectionsQuery.html#__type.collections.__type-1.pageInfo.__type-2.hasNextPage\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type.collections.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"edges\",\"url\":\"types/Internal.CollectionsQuery.html#__type.collections.__type-1.edges\",\"classes\":\"\",\"parent\":\"Internal.CollectionsQuery.__type.collections.__type\"},{\"kind\":4194304,\"name\":\"CollectionByContractAddressQuery\",\"url\":\"types/Internal.CollectionByContractAddressQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionByContractAddressQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.CollectionByContractAddressQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.CollectionByContractAddressQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.CollectionByContractAddressQuery.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.CollectionByContractAddressQuery.html#__type.collection\",\"classes\":\"\",\"parent\":\"Internal.CollectionByContractAddressQuery.__type\"},{\"kind\":4194304,\"name\":\"CollectionsIdByContractAddressQuery\",\"url\":\"types/Internal.CollectionsIdByContractAddressQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionsIdByContractAddressQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.CollectionsIdByContractAddressQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.CollectionsIdByContractAddressQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.CollectionsIdByContractAddressQuery.__type\"},{\"kind\":1024,\"name\":\"collections\",\"url\":\"types/Internal.CollectionsIdByContractAddressQuery.html#__type.collections\",\"classes\":\"\",\"parent\":\"Internal.CollectionsIdByContractAddressQuery.__type\"},{\"kind\":4194304,\"name\":\"CollectionIdBySlugQuery\",\"url\":\"types/Internal.CollectionIdBySlugQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionIdBySlugQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.CollectionIdBySlugQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.CollectionIdBySlugQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.CollectionIdBySlugQuery.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.CollectionIdBySlugQuery.html#__type.collection\",\"classes\":\"\",\"parent\":\"Internal.CollectionIdBySlugQuery.__type\"},{\"kind\":4194304,\"name\":\"ListListingsQuery\",\"url\":\"types/Internal.ListListingsQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListListingsQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListListingsQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type\"},{\"kind\":1024,\"name\":\"result\",\"url\":\"types/Internal.ListListingsQuery.html#__type.result\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListListingsQuery.html#__type.result.__type-1\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type.result\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListListingsQuery.html#__type.result.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type.result.__type\"},{\"kind\":1024,\"name\":\"pageInfo\",\"url\":\"types/Internal.ListListingsQuery.html#__type.result.__type-1.pageInfo\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type.result.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListListingsQuery.html#__type.result.__type-1.pageInfo.__type-2\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type.result.__type.pageInfo\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListListingsQuery.html#__type.result.__type-1.pageInfo.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type.result.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"endCursor\",\"url\":\"types/Internal.ListListingsQuery.html#__type.result.__type-1.pageInfo.__type-2.endCursor\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type.result.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"hasNextPage\",\"url\":\"types/Internal.ListListingsQuery.html#__type.result.__type-1.pageInfo.__type-2.hasNextPage\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type.result.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"edges\",\"url\":\"types/Internal.ListListingsQuery.html#__type.result.__type-1.edges\",\"classes\":\"\",\"parent\":\"Internal.ListListingsQuery.__type.result.__type\"},{\"kind\":4194304,\"name\":\"ListLoansQuery\",\"url\":\"types/Internal.ListLoansQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListLoansQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListLoansQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type\"},{\"kind\":1024,\"name\":\"loans\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans.__type-1\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type.loans\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type.loans.__type\"},{\"kind\":1024,\"name\":\"totalCount\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans.__type-1.totalCount\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type.loans.__type\"},{\"kind\":1024,\"name\":\"pageInfo\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans.__type-1.pageInfo\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type.loans.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans.__type-1.pageInfo.__type-2\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type.loans.__type.pageInfo\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans.__type-1.pageInfo.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type.loans.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"endCursor\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans.__type-1.pageInfo.__type-2.endCursor\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type.loans.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"hasNextPage\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans.__type-1.pageInfo.__type-2.hasNextPage\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type.loans.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"edges\",\"url\":\"types/Internal.ListLoansQuery.html#__type.loans.__type-1.edges\",\"classes\":\"\",\"parent\":\"Internal.ListLoansQuery.__type.loans.__type\"},{\"kind\":4194304,\"name\":\"NftIdByContractAddressAndTokenIdQuery\",\"url\":\"types/Internal.NftIdByContractAddressAndTokenIdQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.NftIdByContractAddressAndTokenIdQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.NftIdByContractAddressAndTokenIdQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.NftIdByContractAddressAndTokenIdQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.NftIdByContractAddressAndTokenIdQuery.__type\"},{\"kind\":1024,\"name\":\"nft\",\"url\":\"types/Internal.NftIdByContractAddressAndTokenIdQuery.html#__type.nft\",\"classes\":\"\",\"parent\":\"Internal.NftIdByContractAddressAndTokenIdQuery.__type\"},{\"kind\":4194304,\"name\":\"NftIdBySlugTokenIdQuery\",\"url\":\"types/Internal.NftIdBySlugTokenIdQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.NftIdBySlugTokenIdQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.NftIdBySlugTokenIdQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.NftIdBySlugTokenIdQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.NftIdBySlugTokenIdQuery.__type\"},{\"kind\":1024,\"name\":\"nft\",\"url\":\"types/Internal.NftIdBySlugTokenIdQuery.html#__type.nft\",\"classes\":\"\",\"parent\":\"Internal.NftIdBySlugTokenIdQuery.__type\"},{\"kind\":4194304,\"name\":\"OwnedNftsQuery\",\"url\":\"types/Internal.OwnedNftsQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type\"},{\"kind\":1024,\"name\":\"ownedNfts\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.ownedNfts\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.ownedNfts.__type-1\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type.ownedNfts\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.ownedNfts.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type.ownedNfts.__type\"},{\"kind\":1024,\"name\":\"pageInfo\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.ownedNfts.__type-1.pageInfo\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type.ownedNfts.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.ownedNfts.__type-1.pageInfo.__type-2\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type.ownedNfts.__type.pageInfo\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.ownedNfts.__type-1.pageInfo.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type.ownedNfts.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"endCursor\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.ownedNfts.__type-1.pageInfo.__type-2.endCursor\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type.ownedNfts.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"hasNextPage\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.ownedNfts.__type-1.pageInfo.__type-2.hasNextPage\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type.ownedNfts.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"edges\",\"url\":\"types/Internal.OwnedNftsQuery.html#__type.ownedNfts.__type-1.edges\",\"classes\":\"\",\"parent\":\"Internal.OwnedNftsQuery.__type.ownedNfts.__type\"},{\"kind\":4194304,\"name\":\"ListOffersQuery\",\"url\":\"types/Internal.ListOffersQuery.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListOffersQuery.html#__type\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListOffersQuery.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type\"},{\"kind\":1024,\"name\":\"result\",\"url\":\"types/Internal.ListOffersQuery.html#__type.result\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListOffersQuery.html#__type.result.__type-1\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type.result\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListOffersQuery.html#__type.result.__type-1.__typename-1\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type.result.__type\"},{\"kind\":1024,\"name\":\"pageInfo\",\"url\":\"types/Internal.ListOffersQuery.html#__type.result.__type-1.pageInfo\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type.result.__type\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.ListOffersQuery.html#__type.result.__type-1.pageInfo.__type-2\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type.result.__type.pageInfo\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.ListOffersQuery.html#__type.result.__type-1.pageInfo.__type-2.__typename-2\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type.result.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"endCursor\",\"url\":\"types/Internal.ListOffersQuery.html#__type.result.__type-1.pageInfo.__type-2.endCursor\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type.result.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"hasNextPage\",\"url\":\"types/Internal.ListOffersQuery.html#__type.result.__type-1.pageInfo.__type-2.hasNextPage\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type.result.__type.pageInfo.__type\"},{\"kind\":1024,\"name\":\"edges\",\"url\":\"types/Internal.ListOffersQuery.html#__type.result.__type-1.edges\",\"classes\":\"\",\"parent\":\"Internal.ListOffersQuery.__type.result.__type\"},{\"kind\":4194304,\"name\":\"Maybe\",\"url\":\"types/Internal.Maybe.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Scalars\",\"url\":\"types/Internal.Scalars.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.Scalars.html#__type\",\"classes\":\"\",\"parent\":\"Internal.Scalars\"},{\"kind\":1024,\"name\":\"ID\",\"url\":\"types/Internal.Scalars.html#__type.ID\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"String\",\"url\":\"types/Internal.Scalars.html#__type.String\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"Boolean\",\"url\":\"types/Internal.Scalars.html#__type.Boolean\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"Int\",\"url\":\"types/Internal.Scalars.html#__type.Int\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"Float\",\"url\":\"types/Internal.Scalars.html#__type.Float\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"Address\",\"url\":\"types/Internal.Scalars.html#__type.Address\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"BigInt\",\"url\":\"types/Internal.Scalars.html#__type.BigInt\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"DateTime\",\"url\":\"types/Internal.Scalars.html#__type.DateTime\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"Hash\",\"url\":\"types/Internal.Scalars.html#__type.Hash\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"Hex\",\"url\":\"types/Internal.Scalars.html#__type.Hex\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"JSON\",\"url\":\"types/Internal.Scalars.html#__type.JSON\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"Signature\",\"url\":\"types/Internal.Scalars.html#__type.Signature\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":1024,\"name\":\"Void\",\"url\":\"types/Internal.Scalars.html#__type.Void\",\"classes\":\"\",\"parent\":\"Internal.Scalars.__type\"},{\"kind\":4194304,\"name\":\"Activity\",\"url\":\"types/Internal.Activity.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.Activity.html#__type\",\"classes\":\"\",\"parent\":\"Internal.Activity\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.Activity.html#__type.id\",\"classes\":\"\",\"parent\":\"Internal.Activity.__type\"},{\"kind\":1024,\"name\":\"timestamp\",\"url\":\"types/Internal.Activity.html#__type.timestamp\",\"classes\":\"\",\"parent\":\"Internal.Activity.__type\"},{\"kind\":1024,\"name\":\"txHash\",\"url\":\"types/Internal.Activity.html#__type.txHash\",\"classes\":\"\",\"parent\":\"Internal.Activity.__type\"},{\"kind\":4194304,\"name\":\"Node\",\"url\":\"types/Internal.Node.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.Node.html#__type\",\"classes\":\"\",\"parent\":\"Internal.Node\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.Node.html#__type.id\",\"classes\":\"\",\"parent\":\"Internal.Node.__type\"},{\"kind\":4194304,\"name\":\"Order\",\"url\":\"types/Internal.Order.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.Order.html#__type\",\"classes\":\"\",\"parent\":\"Internal.Order\"},{\"kind\":1024,\"name\":\"createdDate\",\"url\":\"types/Internal.Order.html#__type.createdDate\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"currency\",\"url\":\"types/Internal.Order.html#__type.currency\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"currencyAddress\",\"url\":\"types/Internal.Order.html#__type.currencyAddress\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"expiration\",\"url\":\"types/Internal.Order.html#__type.expiration\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"fees\",\"url\":\"types/Internal.Order.html#__type.fees\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"hidden\",\"url\":\"types/Internal.Order.html#__type.hidden\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.Order.html#__type.id\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"isAsk\",\"url\":\"types/Internal.Order.html#__type.isAsk\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"isPrivate\",\"url\":\"types/Internal.Order.html#__type.isPrivate\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"maker\",\"url\":\"types/Internal.Order.html#__type.maker\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"marketPlace\",\"url\":\"types/Internal.Order.html#__type.marketPlace\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"netAmount\",\"url\":\"types/Internal.Order.html#__type.netAmount\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"nonce\",\"url\":\"types/Internal.Order.html#__type.nonce\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"orderType\",\"url\":\"types/Internal.Order.html#__type.orderType\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"price\",\"url\":\"types/Internal.Order.html#__type.price\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"signature\",\"url\":\"types/Internal.Order.html#__type.signature\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"startTime\",\"url\":\"types/Internal.Order.html#__type.startTime\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"status\",\"url\":\"types/Internal.Order.html#__type.status\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"taker\",\"url\":\"types/Internal.Order.html#__type.taker\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"timestamp\",\"url\":\"types/Internal.Order.html#__type.timestamp\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":1024,\"name\":\"txHash\",\"url\":\"types/Internal.Order.html#__type.txHash\",\"classes\":\"\",\"parent\":\"Internal.Order.__type\"},{\"kind\":4194304,\"name\":\"Currency\",\"url\":\"types/Internal.Currency.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"MultiSourceLoan\",\"url\":\"types/Internal.MultiSourceLoan.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Nft\",\"url\":\"types/Internal.Nft.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"OptionalNullable\",\"url\":\"types/Internal.OptionalNullable.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"MakeOfferType\",\"url\":\"types/Internal.MakeOfferType.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"LoanV4\",\"url\":\"types/Internal.LoanV4.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"LoanV5\",\"url\":\"types/Internal.LoanV5.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"LoanV6\",\"url\":\"types/Internal.LoanV6.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"AuctionV5\",\"url\":\"types/Internal.AuctionV5.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"AuctionV6\",\"url\":\"types/Internal.AuctionV6.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"HexString\",\"url\":\"types/Internal.HexString.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":8,\"name\":\"LoanSortField\",\"url\":\"enums/Internal.LoanSortField.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":16,\"name\":\"AprBps\",\"url\":\"enums/Internal.LoanSortField.html#AprBps\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"Duration\",\"url\":\"enums/Internal.LoanSortField.html#Duration\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"EffectiveAprBps\",\"url\":\"enums/Internal.LoanSortField.html#EffectiveAprBps\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"EndDate\",\"url\":\"enums/Internal.LoanSortField.html#EndDate\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"ExpectedInterest\",\"url\":\"enums/Internal.LoanSortField.html#ExpectedInterest\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"ExpirationDate\",\"url\":\"enums/Internal.LoanSortField.html#ExpirationDate\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"OriginationFee\",\"url\":\"enums/Internal.LoanSortField.html#OriginationFee\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"PaidInterest\",\"url\":\"enums/Internal.LoanSortField.html#PaidInterest\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"PrincipalAmount\",\"url\":\"enums/Internal.LoanSortField.html#PrincipalAmount\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"RenegotiationRequested\",\"url\":\"enums/Internal.LoanSortField.html#RenegotiationRequested\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"StartTime\",\"url\":\"enums/Internal.LoanSortField.html#StartTime\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":16,\"name\":\"TotalInterest\",\"url\":\"enums/Internal.LoanSortField.html#TotalInterest\",\"classes\":\"\",\"parent\":\"Internal.LoanSortField\"},{\"kind\":4194304,\"name\":\"Interval\",\"url\":\"types/Internal.Interval.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.Interval.html#__type\",\"classes\":\"\",\"parent\":\"Internal.Interval\"},{\"kind\":1024,\"name\":\"max\",\"url\":\"types/Internal.Interval.html#__type.max\",\"classes\":\"\",\"parent\":\"Internal.Interval.__type\"},{\"kind\":1024,\"name\":\"min\",\"url\":\"types/Internal.Interval.html#__type.min\",\"classes\":\"\",\"parent\":\"Internal.Interval.__type\"},{\"kind\":32,\"name\":\"multiSourceLoanABI\",\"url\":\"variables/Internal.multiSourceLoanABI.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"multiSourceLoanABI\",\"url\":\"variables/Internal.multiSourceLoanABI-1.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"multiSourceLoanAbi\",\"url\":\"variables/Internal.multiSourceLoanAbi-2.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"auctionLoanLiquidatorABI\",\"url\":\"variables/Internal.auctionLoanLiquidatorABI.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"auctionLoanLiquidatorABI\",\"url\":\"variables/Internal.auctionLoanLiquidatorABI-1.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"auctionWithBuyoutLoanLiquidatorAbi\",\"url\":\"variables/Internal.auctionWithBuyoutLoanLiquidatorAbi.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"userVaultABI\",\"url\":\"variables/Internal.userVaultABI.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"userVaultAbi\",\"url\":\"variables/Internal.userVaultAbi-1.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"purchaseBundlerAbi\",\"url\":\"variables/Internal.purchaseBundlerAbi.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"erc721ABI\",\"url\":\"variables/Internal.erc721ABI.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"erc1155Abi\",\"url\":\"variables/Internal.erc1155Abi.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":32,\"name\":\"oldErc721WrapperAbi\",\"url\":\"variables/Internal.oldErc721WrapperAbi.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Wallet\",\"url\":\"types/Internal.Wallet.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Loan\",\"url\":\"types/Internal.Loan.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.Loan.html#__type\",\"classes\":\"\",\"parent\":\"Internal.Loan\"},{\"kind\":1024,\"name\":\"activities\",\"url\":\"types/Internal.Loan.html#__type.activities\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"address\",\"url\":\"types/Internal.Loan.html#__type.address\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"borrowerAddress\",\"url\":\"types/Internal.Loan.html#__type.borrowerAddress\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"contractStartTime\",\"url\":\"types/Internal.Loan.html#__type.contractStartTime\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"currency\",\"url\":\"types/Internal.Loan.html#__type.currency\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"types/Internal.Loan.html#__type.duration\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.Loan.html#__type.id\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"indexInBlock\",\"url\":\"types/Internal.Loan.html#__type.indexInBlock\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"loanId\",\"url\":\"types/Internal.Loan.html#__type.loanId\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"offer\",\"url\":\"types/Internal.Loan.html#__type.offer\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"offerIds\",\"url\":\"types/Internal.Loan.html#__type.offerIds\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"principalAddress\",\"url\":\"types/Internal.Loan.html#__type.principalAddress\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"protocolFee\",\"url\":\"types/Internal.Loan.html#__type.protocolFee\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"repaidActivity\",\"url\":\"types/Internal.Loan.html#__type.repaidActivity\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"repaymentTime\",\"url\":\"types/Internal.Loan.html#__type.repaymentTime\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"startTime\",\"url\":\"types/Internal.Loan.html#__type.startTime\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"status\",\"url\":\"types/Internal.Loan.html#__type.status\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"timestamp\",\"url\":\"types/Internal.Loan.html#__type.timestamp\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":1024,\"name\":\"txHash\",\"url\":\"types/Internal.Loan.html#__type.txHash\",\"classes\":\"\",\"parent\":\"Internal.Loan.__type\"},{\"kind\":4194304,\"name\":\"LoanActivity\",\"url\":\"types/Internal.LoanActivity.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.LoanActivity.html#__type\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity\"},{\"kind\":1024,\"name\":\"activityType\",\"url\":\"types/Internal.LoanActivity.html#__type.activityType\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"eventType\",\"url\":\"types/Internal.LoanActivity.html#__type.eventType\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.LoanActivity.html#__type.id\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"indexInBlock\",\"url\":\"types/Internal.LoanActivity.html#__type.indexInBlock\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"loan\",\"url\":\"types/Internal.LoanActivity.html#__type.loan\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"loanId\",\"url\":\"types/Internal.LoanActivity.html#__type.loanId\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"multiSourceLoanHistory\",\"url\":\"types/Internal.LoanActivity.html#__type.multiSourceLoanHistory\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"nextActivity\",\"url\":\"types/Internal.LoanActivity.html#__type.nextActivity\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"prevActivity\",\"url\":\"types/Internal.LoanActivity.html#__type.prevActivity\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"timestamp\",\"url\":\"types/Internal.LoanActivity.html#__type.timestamp\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":1024,\"name\":\"txHash\",\"url\":\"types/Internal.LoanActivity.html#__type.txHash\",\"classes\":\"\",\"parent\":\"Internal.LoanActivity.__type\"},{\"kind\":4194304,\"name\":\"Auction\",\"url\":\"types/Internal.Auction-1.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Offer\",\"url\":\"types/Internal.Offer.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.Offer.html#__type\",\"classes\":\"\",\"parent\":\"Internal.Offer\"},{\"kind\":1024,\"name\":\"aprBps\",\"url\":\"types/Internal.Offer.html#__type.aprBps\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"availablePrincipalAmount\",\"url\":\"types/Internal.Offer.html#__type.availablePrincipalAmount\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"borrowerAddress\",\"url\":\"types/Internal.Offer.html#__type.borrowerAddress\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"capacity\",\"url\":\"types/Internal.Offer.html#__type.capacity\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"consumedCapacity\",\"url\":\"types/Internal.Offer.html#__type.consumedCapacity\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"contractAddress\",\"url\":\"types/Internal.Offer.html#__type.contractAddress\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"createdDate\",\"url\":\"types/Internal.Offer.html#__type.createdDate\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"currency\",\"url\":\"types/Internal.Offer.html#__type.currency\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"duration\",\"url\":\"types/Internal.Offer.html#__type.duration\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"expirationTime\",\"url\":\"types/Internal.Offer.html#__type.expirationTime\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"fee\",\"url\":\"types/Internal.Offer.html#__type.fee\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"hidden\",\"url\":\"types/Internal.Offer.html#__type.hidden\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.Offer.html#__type.id\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"lenderAddress\",\"url\":\"types/Internal.Offer.html#__type.lenderAddress\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"lenderAvailableBalance\",\"url\":\"types/Internal.Offer.html#__type.lenderAvailableBalance\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"maxPrincipal\",\"url\":\"types/Internal.Offer.html#__type.maxPrincipal\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"maxSeniorRepayment\",\"url\":\"types/Internal.Offer.html#__type.maxSeniorRepayment\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"maxTrancheFloor\",\"url\":\"types/Internal.Offer.html#__type.maxTrancheFloor\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"netPrincipal\",\"url\":\"types/Internal.Offer.html#__type.netPrincipal\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"offerHash\",\"url\":\"types/Internal.Offer.html#__type.offerHash\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"offerId\",\"url\":\"types/Internal.Offer.html#__type.offerId\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"principalAddress\",\"url\":\"types/Internal.Offer.html#__type.principalAddress\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"principalAmount\",\"url\":\"types/Internal.Offer.html#__type.principalAmount\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"repayment\",\"url\":\"types/Internal.Offer.html#__type.repayment\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"requiresLiquidation\",\"url\":\"types/Internal.Offer.html#__type.requiresLiquidation\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"signature\",\"url\":\"types/Internal.Offer.html#__type.signature\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"signerAddress\",\"url\":\"types/Internal.Offer.html#__type.signerAddress\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"status\",\"url\":\"types/Internal.Offer.html#__type.status\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":1024,\"name\":\"validators\",\"url\":\"types/Internal.Offer.html#__type.validators\",\"classes\":\"\",\"parent\":\"Internal.Offer.__type\"},{\"kind\":4194304,\"name\":\"RenegotiationRequest\",\"url\":\"types/Internal.RenegotiationRequest.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"LoanRepaid\",\"url\":\"types/Internal.LoanRepaid.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Source\",\"url\":\"types/Internal.Source.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"TopUpRequest\",\"url\":\"types/Internal.TopUpRequest.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Collection\",\"url\":\"types/Internal.Collection.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Asset\",\"url\":\"types/Internal.Asset.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Listing\",\"url\":\"types/Internal.Listing.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"NftStatistics\",\"url\":\"types/Internal.NftStatistics.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.NftStatistics.html#__type\",\"classes\":\"\",\"parent\":\"Internal.NftStatistics\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.NftStatistics.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.NftStatistics.__type\"},{\"kind\":1024,\"name\":\"lastSale\",\"url\":\"types/Internal.NftStatistics.html#__type.lastSale\",\"classes\":\"\",\"parent\":\"Internal.NftStatistics.__type\"},{\"kind\":1024,\"name\":\"loansTotalVolume\",\"url\":\"types/Internal.NftStatistics.html#__type.loansTotalVolume\",\"classes\":\"\",\"parent\":\"Internal.NftStatistics.__type\"},{\"kind\":1024,\"name\":\"numberOfOffers\",\"url\":\"types/Internal.NftStatistics.html#__type.numberOfOffers\",\"classes\":\"\",\"parent\":\"Internal.NftStatistics.__type\"},{\"kind\":1024,\"name\":\"topTraitFloorPrice\",\"url\":\"types/Internal.NftStatistics.html#__type.topTraitFloorPrice\",\"classes\":\"\",\"parent\":\"Internal.NftStatistics.__type\"},{\"kind\":4194304,\"name\":\"Trait\",\"url\":\"types/Internal.Trait.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.Trait.html#__type\",\"classes\":\"\",\"parent\":\"Internal.Trait\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.Trait.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.Trait.__type\"},{\"kind\":1024,\"name\":\"collectionId\",\"url\":\"types/Internal.Trait.html#__type.collectionId\",\"classes\":\"\",\"parent\":\"Internal.Trait.__type\"},{\"kind\":1024,\"name\":\"statistics\",\"url\":\"types/Internal.Trait.html#__type.statistics\",\"classes\":\"\",\"parent\":\"Internal.Trait.__type\"},{\"kind\":1024,\"name\":\"type\",\"url\":\"types/Internal.Trait.html#__type.type\",\"classes\":\"\",\"parent\":\"Internal.Trait.__type\"},{\"kind\":1024,\"name\":\"value\",\"url\":\"types/Internal.Trait.html#__type.value\",\"classes\":\"\",\"parent\":\"Internal.Trait.__type\"},{\"kind\":4194304,\"name\":\"RepayAbiTypeV4\",\"url\":\"types/Internal.RepayAbiTypeV4.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"RepayAbiTypeV5\",\"url\":\"types/Internal.RepayAbiTypeV5.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"RepayAbiTypeV6\",\"url\":\"types/Internal.RepayAbiTypeV6.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"PlaceBidAbiTypeV5\",\"url\":\"types/Internal.PlaceBidAbiTypeV5.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"PlaceBidAbiTypeV6\",\"url\":\"types/Internal.PlaceBidAbiTypeV6.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"MultiSourceLoanHistory\",\"url\":\"types/Internal.MultiSourceLoanHistory.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Bid\",\"url\":\"types/Internal.Bid.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"OfferValidator\",\"url\":\"types/Internal.OfferValidator.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"LoanEvent\",\"url\":\"types/Internal.LoanEvent.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.LoanEvent.html#__type\",\"classes\":\"\",\"parent\":\"Internal.LoanEvent\"},{\"kind\":1024,\"name\":\"eventType\",\"url\":\"types/Internal.LoanEvent.html#__type.eventType\",\"classes\":\"\",\"parent\":\"Internal.LoanEvent.__type\"},{\"kind\":1024,\"name\":\"id\",\"url\":\"types/Internal.LoanEvent.html#__type.id\",\"classes\":\"\",\"parent\":\"Internal.LoanEvent.__type\"},{\"kind\":1024,\"name\":\"loan\",\"url\":\"types/Internal.LoanEvent.html#__type.loan\",\"classes\":\"\",\"parent\":\"Internal.LoanEvent.__type\"},{\"kind\":1024,\"name\":\"loanId\",\"url\":\"types/Internal.LoanEvent.html#__type.loanId\",\"classes\":\"\",\"parent\":\"Internal.LoanEvent.__type\"},{\"kind\":1024,\"name\":\"timestamp\",\"url\":\"types/Internal.LoanEvent.html#__type.timestamp\",\"classes\":\"\",\"parent\":\"Internal.LoanEvent.__type\"},{\"kind\":4194304,\"name\":\"ContractData\",\"url\":\"types/Internal.ContractData.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"CollectionOffer\",\"url\":\"types/Internal.CollectionOffer.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"CollectionStatistics\",\"url\":\"types/Internal.CollectionStatistics.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionStatistics.html#__type\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.CollectionStatistics.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"bestOffer\",\"url\":\"types/Internal.CollectionStatistics.html#__type.bestOffer\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"floorPrice\",\"url\":\"types/Internal.CollectionStatistics.html#__type.floorPrice\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"floorPrice7d\",\"url\":\"types/Internal.CollectionStatistics.html#__type.floorPrice7d\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"floorPrice30d\",\"url\":\"types/Internal.CollectionStatistics.html#__type.floorPrice30d\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"nftsCount\",\"url\":\"types/Internal.CollectionStatistics.html#__type.nftsCount\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"numberOfOffers\",\"url\":\"types/Internal.CollectionStatistics.html#__type.numberOfOffers\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"numberOfPricedNfts\",\"url\":\"types/Internal.CollectionStatistics.html#__type.numberOfPricedNfts\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"outstandingLoanCount\",\"url\":\"types/Internal.CollectionStatistics.html#__type.outstandingLoanCount\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"outstandingNftsCount\",\"url\":\"types/Internal.CollectionStatistics.html#__type.outstandingNftsCount\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"outstandingPrincipal\",\"url\":\"types/Internal.CollectionStatistics.html#__type.outstandingPrincipal\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"percentageInOutstandingLoans\",\"url\":\"types/Internal.CollectionStatistics.html#__type.percentageInOutstandingLoans\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"repaymentRate\",\"url\":\"types/Internal.CollectionStatistics.html#__type.repaymentRate\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLoanVolume\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalLoanVolume\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLoanVolume1d\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalLoanVolume1d\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLoanVolume1m\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalLoanVolume1m\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLoanVolume1w\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalLoanVolume1w\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLoanVolume1y\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalLoanVolume1y\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLoanVolume2m\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalLoanVolume2m\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLoanVolume3m\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalLoanVolume3m\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLoanVolume4m\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalLoanVolume4m\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalOutstandingPrincipal\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalOutstandingPrincipal\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalVolume\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalVolume\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalVolume1d\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalVolume1d\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalVolume1m\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalVolume1m\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalVolume1w\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalVolume1w\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalVolume1y\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalVolume1y\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalVolume2m\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalVolume2m\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalVolume3m\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalVolume3m\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":1024,\"name\":\"totalVolume4m\",\"url\":\"types/Internal.CollectionStatistics.html#__type.totalVolume4m\",\"classes\":\"\",\"parent\":\"Internal.CollectionStatistics.__type\"},{\"kind\":4194304,\"name\":\"User\",\"url\":\"types/Internal.User.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"Sale\",\"url\":\"types/Internal.Sale.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"CurrencyAmount\",\"url\":\"types/Internal.CurrencyAmount.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CurrencyAmount.html#__type\",\"classes\":\"\",\"parent\":\"Internal.CurrencyAmount\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.CurrencyAmount.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.CurrencyAmount.__type\"},{\"kind\":1024,\"name\":\"amount\",\"url\":\"types/Internal.CurrencyAmount.html#__type.amount\",\"classes\":\"\",\"parent\":\"Internal.CurrencyAmount.__type\"},{\"kind\":1024,\"name\":\"currency\",\"url\":\"types/Internal.CurrencyAmount.html#__type.currency\",\"classes\":\"\",\"parent\":\"Internal.CurrencyAmount.__type\"},{\"kind\":32,\"name\":\"auctionLoanLiquidatorAbi\",\"url\":\"variables/Internal.auctionLoanLiquidatorAbi-2.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"SourceHistory\",\"url\":\"types/Internal.SourceHistory.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"CollectionOfferStatistics\",\"url\":\"types/Internal.CollectionOfferStatistics.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.CollectionOfferStatistics.html#__type\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferStatistics\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.CollectionOfferStatistics.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferStatistics.__type\"},{\"kind\":1024,\"name\":\"acceptedLoans\",\"url\":\"types/Internal.CollectionOfferStatistics.html#__type.acceptedLoans\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferStatistics.__type\"},{\"kind\":1024,\"name\":\"consumedCapacity\",\"url\":\"types/Internal.CollectionOfferStatistics.html#__type.consumedCapacity\",\"classes\":\"\",\"parent\":\"Internal.CollectionOfferStatistics.__type\"},{\"kind\":4194304,\"name\":\"LinkedWallets\",\"url\":\"types/Internal.LinkedWallets.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":4194304,\"name\":\"UserStatistics\",\"url\":\"types/Internal.UserStatistics.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.UserStatistics.html#__type\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.UserStatistics.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"defaultedPrincipal\",\"url\":\"types/Internal.UserStatistics.html#__type.defaultedPrincipal\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"interestEarnedByCollection\",\"url\":\"types/Internal.UserStatistics.html#__type.interestEarnedByCollection\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"loanCount\",\"url\":\"types/Internal.UserStatistics.html#__type.loanCount\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"loanCountByCollection\",\"url\":\"types/Internal.UserStatistics.html#__type.loanCountByCollection\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"loanPrincipalByCollection\",\"url\":\"types/Internal.UserStatistics.html#__type.loanPrincipalByCollection\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"originationCountAndPrincipalByMonth\",\"url\":\"types/Internal.UserStatistics.html#__type.originationCountAndPrincipalByMonth\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"outstandingAccruedInterest\",\"url\":\"types/Internal.UserStatistics.html#__type.outstandingAccruedInterest\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"outstandingPrincipal\",\"url\":\"types/Internal.UserStatistics.html#__type.outstandingPrincipal\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"realizedProfits\",\"url\":\"types/Internal.UserStatistics.html#__type.realizedProfits\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"renegotiationCountAndPrincipalByMonth\",\"url\":\"types/Internal.UserStatistics.html#__type.renegotiationCountAndPrincipalByMonth\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLentPrincipal\",\"url\":\"types/Internal.UserStatistics.html#__type.totalLentPrincipal\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"totalLoanCount\",\"url\":\"types/Internal.UserStatistics.html#__type.totalLoanCount\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"wavgOutstandingApr\",\"url\":\"types/Internal.UserStatistics.html#__type.wavgOutstandingApr\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"wavgOutstandingAprByCollection\",\"url\":\"types/Internal.UserStatistics.html#__type.wavgOutstandingAprByCollection\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"wavgRepaidApr\",\"url\":\"types/Internal.UserStatistics.html#__type.wavgRepaidApr\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":1024,\"name\":\"wavgRepaidAprByCollection\",\"url\":\"types/Internal.UserStatistics.html#__type.wavgRepaidAprByCollection\",\"classes\":\"\",\"parent\":\"Internal.UserStatistics.__type\"},{\"kind\":4194304,\"name\":\"StatByCollection\",\"url\":\"types/Internal.StatByCollection.html\",\"classes\":\"\",\"parent\":\"Internal\"},{\"kind\":65536,\"name\":\"__type\",\"url\":\"types/Internal.StatByCollection.html#__type\",\"classes\":\"\",\"parent\":\"Internal.StatByCollection\"},{\"kind\":1024,\"name\":\"__typename\",\"url\":\"types/Internal.StatByCollection.html#__type.__typename\",\"classes\":\"\",\"parent\":\"Internal.StatByCollection.__type\"},{\"kind\":1024,\"name\":\"collection\",\"url\":\"types/Internal.StatByCollection.html#__type.collection\",\"classes\":\"\",\"parent\":\"Internal.StatByCollection.__type\"},{\"kind\":1024,\"name\":\"value\",\"url\":\"types/Internal.StatByCollection.html#__type.value\",\"classes\":\"\",\"parent\":\"Internal.StatByCollection.__type\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"comment\"],\"fieldVectors\":[[\"name/0\",[0,64.239]],[\"comment/0\",[]],[\"name/1\",[1,46.66]],[\"comment/1\",[]],[\"name/2\",[2,64.239]],[\"comment/2\",[]],[\"name/3\",[3,45.993]],[\"comment/3\",[]],[\"name/4\",[4,15.275]],[\"comment/4\",[]],[\"name/5\",[5,69.347]],[\"comment/5\",[]],[\"name/6\",[6,48.145]],[\"comment/6\",[]],[\"name/7\",[4,15.275]],[\"comment/7\",[]],[\"name/8\",[7,60.874]],[\"comment/8\",[]],[\"name/9\",[8,69.347]],[\"comment/9\",[]],[\"name/10\",[4,15.275]],[\"comment/10\",[]],[\"name/11\",[9,60.874]],[\"comment/11\",[]],[\"name/12\",[10,64.239]],[\"comment/12\",[]],[\"name/13\",[11,69.347]],[\"comment/13\",[]],[\"name/14\",[12,69.347]],[\"comment/14\",[]],[\"name/15\",[13,69.347]],[\"comment/15\",[]],[\"name/16\",[14,69.347]],[\"comment/16\",[]],[\"name/17\",[15,53.253]],[\"comment/17\",[]],[\"name/18\",[16,53.253]],[\"comment/18\",[]],[\"name/19\",[17,58.361]],[\"comment/19\",[]],[\"name/20\",[18,60.874]],[\"comment/20\",[]],[\"name/21\",[19,69.347]],[\"comment/21\",[]],[\"name/22\",[20,58.361]],[\"comment/22\",[]],[\"name/23\",[21,60.874]],[\"comment/23\",[]],[\"name/24\",[22,60.874]],[\"comment/24\",[]],[\"name/25\",[23,58.361]],[\"comment/25\",[]],[\"name/26\",[24,58.361]],[\"comment/26\",[]],[\"name/27\",[25,58.361]],[\"comment/27\",[]],[\"name/28\",[26,69.347]],[\"comment/28\",[]],[\"name/29\",[27,53.253]],[\"comment/29\",[]],[\"name/30\",[28,58.361]],[\"comment/30\",[]],[\"name/31\",[29,53.253]],[\"comment/31\",[]],[\"name/32\",[30,69.347]],[\"comment/32\",[]],[\"name/33\",[31,64.239]],[\"comment/33\",[]],[\"name/34\",[32,69.347]],[\"comment/34\",[]],[\"name/35\",[33,69.347]],[\"comment/35\",[]],[\"name/36\",[34,69.347]],[\"comment/36\",[]],[\"name/37\",[35,60.874]],[\"comment/37\",[]],[\"name/38\",[36,52.001]],[\"comment/38\",[]],[\"name/39\",[37,58.361]],[\"comment/39\",[]],[\"name/40\",[38,58.361]],[\"comment/40\",[]],[\"name/41\",[39,53.253]],[\"comment/41\",[]],[\"name/42\",[40,58.361]],[\"comment/42\",[]],[\"name/43\",[41,58.361]],[\"comment/43\",[]],[\"name/44\",[42,58.361]],[\"comment/44\",[]],[\"name/45\",[43,58.361]],[\"comment/45\",[]],[\"name/46\",[44,58.361]],[\"comment/46\",[]],[\"name/47\",[45,58.361]],[\"comment/47\",[]],[\"name/48\",[46,54.684]],[\"comment/48\",[]],[\"name/49\",[47,54.684]],[\"comment/49\",[]],[\"name/50\",[48,58.361]],[\"comment/50\",[]],[\"name/51\",[49,49.888]],[\"comment/51\",[]],[\"name/52\",[50,53.253]],[\"comment/52\",[]],[\"name/53\",[51,53.253]],[\"comment/53\",[]],[\"name/54\",[52,58.361]],[\"comment/54\",[]],[\"name/55\",[53,69.347]],[\"comment/55\",[]],[\"name/56\",[54,69.347]],[\"comment/56\",[]],[\"name/57\",[55,69.347]],[\"comment/57\",[]],[\"name/58\",[56,69.347]],[\"comment/58\",[]],[\"name/59\",[57,69.347]],[\"comment/59\",[]],[\"name/60\",[58,69.347]],[\"comment/60\",[]],[\"name/61\",[59,69.347]],[\"comment/61\",[]],[\"name/62\",[60,69.347]],[\"comment/62\",[]],[\"name/63\",[61,69.347]],[\"comment/63\",[]],[\"name/64\",[62,69.347]],[\"comment/64\",[]],[\"name/65\",[63,69.347]],[\"comment/65\",[]],[\"name/66\",[64,69.347]],[\"comment/66\",[]],[\"name/67\",[65,64.239]],[\"comment/67\",[]],[\"name/68\",[66,69.347]],[\"comment/68\",[]],[\"name/69\",[67,69.347]],[\"comment/69\",[]],[\"name/70\",[68,69.347]],[\"comment/70\",[]],[\"name/71\",[69,69.347]],[\"comment/71\",[]],[\"name/72\",[70,69.347]],[\"comment/72\",[]],[\"name/73\",[71,69.347]],[\"comment/73\",[]],[\"name/74\",[72,69.347]],[\"comment/74\",[]],[\"name/75\",[73,69.347]],[\"comment/75\",[]],[\"name/76\",[74,64.239]],[\"comment/76\",[]],[\"name/77\",[75,69.347]],[\"comment/77\",[]],[\"name/78\",[76,69.347]],[\"comment/78\",[]],[\"name/79\",[77,69.347]],[\"comment/79\",[]],[\"name/80\",[78,69.347]],[\"comment/80\",[]],[\"name/81\",[79,69.347]],[\"comment/81\",[]],[\"name/82\",[80,69.347]],[\"comment/82\",[]],[\"name/83\",[81,69.347]],[\"comment/83\",[]],[\"name/84\",[82,69.347]],[\"comment/84\",[]],[\"name/85\",[83,69.347]],[\"comment/85\",[]],[\"name/86\",[84,49.888]],[\"comment/86\",[]],[\"name/87\",[85,64.239]],[\"comment/87\",[]],[\"name/88\",[86,60.874]],[\"comment/88\",[]],[\"name/89\",[87,69.347]],[\"comment/89\",[]],[\"name/90\",[88,48.145]],[\"comment/90\",[]],[\"name/91\",[89,64.239]],[\"comment/91\",[]],[\"name/92\",[90,64.239]],[\"comment/92\",[]],[\"name/93\",[91,53.253]],[\"comment/93\",[]],[\"name/94\",[92,60.874]],[\"comment/94\",[]],[\"name/95\",[93,69.347]],[\"comment/95\",[]],[\"name/96\",[94,60.874]],[\"comment/96\",[]],[\"name/97\",[95,50.889]],[\"comment/97\",[]],[\"name/98\",[96,64.239]],[\"comment/98\",[]],[\"name/99\",[97,52.001]],[\"comment/99\",[]],[\"name/100\",[98,64.239]],[\"comment/100\",[]],[\"name/101\",[99,69.347]],[\"comment/101\",[]],[\"name/102\",[100,69.347]],[\"comment/102\",[]],[\"name/103\",[101,69.347]],[\"comment/103\",[]],[\"name/104\",[102,69.347]],[\"comment/104\",[]],[\"name/105\",[0,64.239]],[\"comment/105\",[]],[\"name/106\",[103,69.347]],[\"comment/106\",[]],[\"name/107\",[104,69.347]],[\"comment/107\",[]],[\"name/108\",[105,64.239]],[\"comment/108\",[]],[\"name/109\",[106,64.239]],[\"comment/109\",[]],[\"name/110\",[107,64.239]],[\"comment/110\",[]],[\"name/111\",[108,69.347]],[\"comment/111\",[]],[\"name/112\",[109,64.239]],[\"comment/112\",[]],[\"name/113\",[110,69.347]],[\"comment/113\",[]],[\"name/114\",[111,69.347]],[\"comment/114\",[]],[\"name/115\",[112,64.239]],[\"comment/115\",[]],[\"name/116\",[113,69.347]],[\"comment/116\",[]],[\"name/117\",[114,64.239]],[\"comment/117\",[]],[\"name/118\",[115,69.347]],[\"comment/118\",[]],[\"name/119\",[116,69.347]],[\"comment/119\",[]],[\"name/120\",[117,69.347]],[\"comment/120\",[]],[\"name/121\",[118,69.347]],[\"comment/121\",[]],[\"name/122\",[4,15.275]],[\"comment/122\",[]],[\"name/123\",[119,60.874]],[\"comment/123\",[]],[\"name/124\",[120,60.874]],[\"comment/124\",[]],[\"name/125\",[121,64.239]],[\"comment/125\",[]],[\"name/126\",[122,69.347]],[\"comment/126\",[]],[\"name/127\",[4,15.275]],[\"comment/127\",[]],[\"name/128\",[123,52.001]],[\"comment/128\",[]],[\"name/129\",[124,69.347]],[\"comment/129\",[]],[\"name/130\",[125,48.145]],[\"comment/130\",[]],[\"name/131\",[126,69.347]],[\"comment/131\",[]],[\"name/132\",[127,69.347]],[\"comment/132\",[]],[\"name/133\",[128,69.347]],[\"comment/133\",[]],[\"name/134\",[97,52.001]],[\"comment/134\",[]],[\"name/135\",[129,69.347]],[\"comment/135\",[]],[\"name/136\",[119,60.874]],[\"comment/136\",[]],[\"name/137\",[120,60.874]],[\"comment/137\",[]],[\"name/138\",[130,69.347]],[\"comment/138\",[]],[\"name/139\",[36,52.001]],[\"comment/139\",[]],[\"name/140\",[131,69.347]],[\"comment/140\",[]],[\"name/141\",[132,69.347]],[\"comment/141\",[]],[\"name/142\",[121,64.239]],[\"comment/142\",[]],[\"name/143\",[133,69.347]],[\"comment/143\",[]],[\"name/144\",[134,69.347]],[\"comment/144\",[]],[\"name/145\",[135,69.347]],[\"comment/145\",[]],[\"name/146\",[136,69.347]],[\"comment/146\",[]],[\"name/147\",[4,15.275]],[\"comment/147\",[]],[\"name/148\",[36,52.001]],[\"comment/148\",[]],[\"name/149\",[137,64.239]],[\"comment/149\",[]],[\"name/150\",[138,69.347]],[\"comment/150\",[]],[\"name/151\",[119,60.874]],[\"comment/151\",[]],[\"name/152\",[120,60.874]],[\"comment/152\",[]],[\"name/153\",[139,69.347]],[\"comment/153\",[]],[\"name/154\",[140,69.347]],[\"comment/154\",[]],[\"name/155\",[141,69.347]],[\"comment/155\",[]],[\"name/156\",[142,69.347]],[\"comment/156\",[]],[\"name/157\",[143,69.347]],[\"comment/157\",[]],[\"name/158\",[3,45.993]],[\"comment/158\",[]],[\"name/159\",[4,15.275]],[\"comment/159\",[]],[\"name/160\",[144,64.239]],[\"comment/160\",[]],[\"name/161\",[2,64.239]],[\"comment/161\",[]],[\"name/162\",[1,46.66]],[\"comment/162\",[]],[\"name/163\",[145,69.347]],[\"comment/163\",[]],[\"name/164\",[4,15.275]],[\"comment/164\",[]],[\"name/165\",[146,69.347]],[\"comment/165\",[]],[\"name/166\",[4,15.275]],[\"comment/166\",[]],[\"name/167\",[147,69.347]],[\"comment/167\",[]],[\"name/168\",[148,69.347]],[\"comment/168\",[]],[\"name/169\",[149,69.347]],[\"comment/169\",[]],[\"name/170\",[150,69.347]],[\"comment/170\",[]],[\"name/171\",[151,69.347]],[\"comment/171\",[]],[\"name/172\",[152,69.347]],[\"comment/172\",[]],[\"name/173\",[153,64.239]],[\"comment/173\",[]],[\"name/174\",[154,64.239]],[\"comment/174\",[]],[\"name/175\",[155,69.347]],[\"comment/175\",[]],[\"name/176\",[156,69.347]],[\"comment/176\",[]],[\"name/177\",[157,69.347]],[\"comment/177\",[]],[\"name/178\",[9,60.874]],[\"comment/178\",[]],[\"name/179\",[158,69.347]],[\"comment/179\",[]],[\"name/180\",[159,64.239]],[\"comment/180\",[]],[\"name/181\",[10,64.239]],[\"comment/181\",[]],[\"name/182\",[123,52.001]],[\"comment/182\",[]],[\"name/183\",[105,64.239]],[\"comment/183\",[]],[\"name/184\",[107,64.239]],[\"comment/184\",[]],[\"name/185\",[106,64.239]],[\"comment/185\",[]],[\"name/186\",[160,64.239]],[\"comment/186\",[]],[\"name/187\",[161,69.347]],[\"comment/187\",[]],[\"name/188\",[7,60.874]],[\"comment/188\",[]],[\"name/189\",[1,46.66]],[\"comment/189\",[]],[\"name/190\",[7,60.874]],[\"comment/190\",[]],[\"name/191\",[4,15.275]],[\"comment/191\",[]],[\"name/192\",[162,64.239]],[\"comment/192\",[]],[\"name/193\",[163,64.239]],[\"comment/193\",[]],[\"name/194\",[164,64.239]],[\"comment/194\",[]],[\"name/195\",[165,64.239]],[\"comment/195\",[]],[\"name/196\",[17,58.361]],[\"comment/196\",[]],[\"name/197\",[166,64.239]],[\"comment/197\",[]],[\"name/198\",[167,64.239]],[\"comment/198\",[]],[\"name/199\",[18,60.874]],[\"comment/199\",[]],[\"name/200\",[23,58.361]],[\"comment/200\",[]],[\"name/201\",[168,64.239]],[\"comment/201\",[]],[\"name/202\",[24,58.361]],[\"comment/202\",[]],[\"name/203\",[169,64.239]],[\"comment/203\",[]],[\"name/204\",[21,60.874]],[\"comment/204\",[]],[\"name/205\",[170,69.347]],[\"comment/205\",[]],[\"name/206\",[22,60.874]],[\"comment/206\",[]],[\"name/207\",[36,52.001]],[\"comment/207\",[]],[\"name/208\",[171,64.239]],[\"comment/208\",[]],[\"name/209\",[172,64.239]],[\"comment/209\",[]],[\"name/210\",[173,64.239]],[\"comment/210\",[]],[\"name/211\",[174,64.239]],[\"comment/211\",[]],[\"name/212\",[175,64.239]],[\"comment/212\",[]],[\"name/213\",[176,64.239]],[\"comment/213\",[]],[\"name/214\",[177,64.239]],[\"comment/214\",[]],[\"name/215\",[38,58.361]],[\"comment/215\",[]],[\"name/216\",[178,64.239]],[\"comment/216\",[]],[\"name/217\",[166,64.239]],[\"comment/217\",[]],[\"name/218\",[4,15.275]],[\"comment/218\",[]],[\"name/219\",[164,64.239]],[\"comment/219\",[]],[\"name/220\",[4,15.275]],[\"comment/220\",[]],[\"name/221\",[169,64.239]],[\"comment/221\",[]],[\"name/222\",[4,15.275]],[\"comment/222\",[]],[\"name/223\",[177,64.239]],[\"comment/223\",[]],[\"name/224\",[4,15.275]],[\"comment/224\",[]],[\"name/225\",[176,64.239]],[\"comment/225\",[]],[\"name/226\",[4,15.275]],[\"comment/226\",[]],[\"name/227\",[36,52.001]],[\"comment/227\",[]],[\"name/228\",[4,15.275]],[\"comment/228\",[]],[\"name/229\",[173,64.239]],[\"comment/229\",[]],[\"name/230\",[4,15.275]],[\"comment/230\",[]],[\"name/231\",[172,64.239]],[\"comment/231\",[]],[\"name/232\",[4,15.275]],[\"comment/232\",[]],[\"name/233\",[171,64.239]],[\"comment/233\",[]],[\"name/234\",[4,15.275]],[\"comment/234\",[]],[\"name/235\",[162,64.239]],[\"comment/235\",[]],[\"name/236\",[4,15.275]],[\"comment/236\",[]],[\"name/237\",[163,64.239]],[\"comment/237\",[]],[\"name/238\",[4,15.275]],[\"comment/238\",[]],[\"name/239\",[38,58.361]],[\"comment/239\",[]],[\"name/240\",[4,15.275]],[\"comment/240\",[]],[\"name/241\",[17,58.361]],[\"comment/241\",[]],[\"name/242\",[4,15.275]],[\"comment/242\",[]],[\"name/243\",[21,60.874]],[\"comment/243\",[]],[\"name/244\",[4,15.275]],[\"comment/244\",[]],[\"name/245\",[18,60.874]],[\"comment/245\",[]],[\"name/246\",[4,15.275]],[\"comment/246\",[]],[\"name/247\",[22,60.874]],[\"comment/247\",[]],[\"name/248\",[4,15.275]],[\"comment/248\",[]],[\"name/249\",[23,58.361]],[\"comment/249\",[]],[\"name/250\",[4,15.275]],[\"comment/250\",[]],[\"name/251\",[24,58.361]],[\"comment/251\",[]],[\"name/252\",[4,15.275]],[\"comment/252\",[]],[\"name/253\",[167,64.239]],[\"comment/253\",[]],[\"name/254\",[168,64.239]],[\"comment/254\",[]],[\"name/255\",[165,64.239]],[\"comment/255\",[]],[\"name/256\",[179,69.347]],[\"comment/256\",[]],[\"name/257\",[178,64.239]],[\"comment/257\",[]],[\"name/258\",[175,64.239]],[\"comment/258\",[]],[\"name/259\",[174,64.239]],[\"comment/259\",[]],[\"name/260\",[180,69.347]],[\"comment/260\",[]],[\"name/261\",[181,69.347]],[\"comment/261\",[]],[\"name/262\",[182,69.347]],[\"comment/262\",[]],[\"name/263\",[4,15.275]],[\"comment/263\",[]],[\"name/264\",[183,69.347]],[\"comment/264\",[]],[\"name/265\",[184,69.347]],[\"comment/265\",[]],[\"name/266\",[185,69.347]],[\"comment/266\",[]],[\"name/267\",[4,15.275]],[\"comment/267\",[]],[\"name/268\",[84,49.888]],[\"comment/268\",[]],[\"name/269\",[186,52.001]],[\"comment/269\",[]],[\"name/270\",[187,56.354]],[\"comment/270\",[]],[\"name/271\",[188,50.889]],[\"comment/271\",[]],[\"name/272\",[88,48.145]],[\"comment/272\",[]],[\"name/273\",[189,50.889]],[\"comment/273\",[]],[\"name/274\",[91,53.253]],[\"comment/274\",[]],[\"name/275\",[190,49.888]],[\"comment/275\",[]],[\"name/276\",[191,54.684]],[\"comment/276\",[]],[\"name/277\",[192,56.354]],[\"comment/277\",[]],[\"name/278\",[35,60.874]],[\"comment/278\",[]],[\"name/279\",[193,53.253]],[\"comment/279\",[]],[\"name/280\",[194,56.354]],[\"comment/280\",[]],[\"name/281\",[195,58.361]],[\"comment/281\",[]],[\"name/282\",[196,54.684]],[\"comment/282\",[]],[\"name/283\",[95,50.889]],[\"comment/283\",[]],[\"name/284\",[197,53.253]],[\"comment/284\",[]],[\"name/285\",[198,52.001]],[\"comment/285\",[]],[\"name/286\",[199,49.888]],[\"comment/286\",[]],[\"name/287\",[200,69.347]],[\"comment/287\",[]],[\"name/288\",[4,15.275]],[\"comment/288\",[]],[\"name/289\",[201,64.239]],[\"comment/289\",[]],[\"name/290\",[188,50.889]],[\"comment/290\",[]],[\"name/291\",[202,64.239]],[\"comment/291\",[]],[\"name/292\",[189,50.889]],[\"comment/292\",[]],[\"name/293\",[203,64.239]],[\"comment/293\",[]],[\"name/294\",[204,69.347]],[\"comment/294\",[]],[\"name/295\",[205,69.347]],[\"comment/295\",[]],[\"name/296\",[198,52.001]],[\"comment/296\",[]],[\"name/297\",[206,58.361]],[\"comment/297\",[]],[\"name/298\",[207,64.239]],[\"comment/298\",[]],[\"name/299\",[208,54.684]],[\"comment/299\",[]],[\"name/300\",[209,69.347]],[\"comment/300\",[]],[\"name/301\",[210,69.347]],[\"comment/301\",[]],[\"name/302\",[4,15.275]],[\"comment/302\",[]],[\"name/303\",[211,32.542]],[\"comment/303\",[]],[\"name/304\",[17,58.361]],[\"comment/304\",[]],[\"name/305\",[212,69.347]],[\"comment/305\",[]],[\"name/306\",[4,15.275]],[\"comment/306\",[]],[\"name/307\",[211,32.542]],[\"comment/307\",[]],[\"name/308\",[213,69.347]],[\"comment/308\",[]],[\"name/309\",[214,69.347]],[\"comment/309\",[]],[\"name/310\",[215,69.347]],[\"comment/310\",[]],[\"name/311\",[4,15.275]],[\"comment/311\",[]],[\"name/312\",[211,32.542]],[\"comment/312\",[]],[\"name/313\",[216,69.347]],[\"comment/313\",[]],[\"name/314\",[4,15.275]],[\"comment/314\",[]],[\"name/315\",[211,32.542]],[\"comment/315\",[]],[\"name/316\",[217,45.993]],[\"comment/316\",[]],[\"name/317\",[218,69.347]],[\"comment/317\",[]],[\"name/318\",[4,15.275]],[\"comment/318\",[]],[\"name/319\",[211,32.542]],[\"comment/319\",[]],[\"name/320\",[219,69.347]],[\"comment/320\",[]],[\"name/321\",[4,15.275]],[\"comment/321\",[]],[\"name/322\",[211,32.542]],[\"comment/322\",[]],[\"name/323\",[217,45.993]],[\"comment/323\",[]],[\"name/324\",[220,69.347]],[\"comment/324\",[]],[\"name/325\",[4,15.275]],[\"comment/325\",[]],[\"name/326\",[211,32.542]],[\"comment/326\",[]],[\"name/327\",[23,58.361]],[\"comment/327\",[]],[\"name/328\",[221,69.347]],[\"comment/328\",[]],[\"name/329\",[4,15.275]],[\"comment/329\",[]],[\"name/330\",[211,32.542]],[\"comment/330\",[]],[\"name/331\",[24,58.361]],[\"comment/331\",[]],[\"name/332\",[222,69.347]],[\"comment/332\",[]],[\"name/333\",[223,69.347]],[\"comment/333\",[]],[\"name/334\",[224,69.347]],[\"comment/334\",[]],[\"name/335\",[208,54.684]],[\"comment/335\",[]],[\"name/336\",[88,48.145]],[\"comment/336\",[]],[\"name/337\",[225,69.347]],[\"comment/337\",[]],[\"name/338\",[189,50.889]],[\"comment/338\",[]],[\"name/339\",[226,69.347]],[\"comment/339\",[]],[\"name/340\",[227,69.347]],[\"comment/340\",[]],[\"name/341\",[4,15.275]],[\"comment/341\",[]],[\"name/342\",[211,32.542]],[\"comment/342\",[]],[\"name/343\",[228,69.347]],[\"comment/343\",[]],[\"name/344\",[4,15.275]],[\"comment/344\",[]],[\"name/345\",[211,32.542]],[\"comment/345\",[]],[\"name/346\",[217,45.993]],[\"comment/346\",[]],[\"name/347\",[229,69.347]],[\"comment/347\",[]],[\"name/348\",[4,15.275]],[\"comment/348\",[]],[\"name/349\",[211,32.542]],[\"comment/349\",[]],[\"name/350\",[230,69.347]],[\"comment/350\",[]],[\"name/351\",[4,15.275]],[\"comment/351\",[]],[\"name/352\",[211,32.542]],[\"comment/352\",[]],[\"name/353\",[217,45.993]],[\"comment/353\",[]],[\"name/354\",[231,69.347]],[\"comment/354\",[]],[\"name/355\",[232,64.239]],[\"comment/355\",[]],[\"name/356\",[233,69.347]],[\"comment/356\",[]],[\"name/357\",[234,69.347]],[\"comment/357\",[]],[\"name/358\",[235,69.347]],[\"comment/358\",[]],[\"name/359\",[4,15.275]],[\"comment/359\",[]],[\"name/360\",[236,64.239]],[\"comment/360\",[]],[\"name/361\",[125,48.145]],[\"comment/361\",[]],[\"name/362\",[237,64.239]],[\"comment/362\",[]],[\"name/363\",[238,69.347]],[\"comment/363\",[]],[\"name/364\",[239,69.347]],[\"comment/364\",[]],[\"name/365\",[4,15.275]],[\"comment/365\",[]],[\"name/366\",[236,64.239]],[\"comment/366\",[]],[\"name/367\",[36,52.001]],[\"comment/367\",[]],[\"name/368\",[237,64.239]],[\"comment/368\",[]],[\"name/369\",[240,69.347]],[\"comment/369\",[]],[\"name/370\",[241,69.347]],[\"comment/370\",[]],[\"name/371\",[242,69.347]],[\"comment/371\",[]],[\"name/372\",[243,69.347]],[\"comment/372\",[]],[\"name/373\",[4,15.275]],[\"comment/373\",[]],[\"name/374\",[125,48.145]],[\"comment/374\",[]],[\"name/375\",[4,15.275]],[\"comment/375\",[]],[\"name/376\",[244,58.361]],[\"comment/376\",[]],[\"name/377\",[4,15.275]],[\"comment/377\",[]],[\"name/378\",[188,50.889]],[\"comment/378\",[]],[\"name/379\",[245,69.347]],[\"comment/379\",[]],[\"name/380\",[208,54.684]],[\"comment/380\",[]],[\"name/381\",[246,69.347]],[\"comment/381\",[]],[\"name/382\",[109,64.239]],[\"comment/382\",[]],[\"name/383\",[4,15.275]],[\"comment/383\",[]],[\"name/384\",[84,49.888]],[\"comment/384\",[]],[\"name/385\",[186,52.001]],[\"comment/385\",[]],[\"name/386\",[187,56.354]],[\"comment/386\",[]],[\"name/387\",[188,50.889]],[\"comment/387\",[]],[\"name/388\",[88,48.145]],[\"comment/388\",[]],[\"name/389\",[189,50.889]],[\"comment/389\",[]],[\"name/390\",[91,53.253]],[\"comment/390\",[]],[\"name/391\",[190,49.888]],[\"comment/391\",[]],[\"name/392\",[191,54.684]],[\"comment/392\",[]],[\"name/393\",[192,56.354]],[\"comment/393\",[]],[\"name/394\",[35,60.874]],[\"comment/394\",[]],[\"name/395\",[195,58.361]],[\"comment/395\",[]],[\"name/396\",[196,54.684]],[\"comment/396\",[]],[\"name/397\",[95,50.889]],[\"comment/397\",[]],[\"name/398\",[197,53.253]],[\"comment/398\",[]],[\"name/399\",[199,49.888]],[\"comment/399\",[]],[\"name/400\",[247,69.347]],[\"comment/400\",[]],[\"name/401\",[4,15.275]],[\"comment/401\",[]],[\"name/402\",[191,54.684]],[\"comment/402\",[]],[\"name/403\",[112,64.239]],[\"comment/403\",[]],[\"name/404\",[4,15.275]],[\"comment/404\",[]],[\"name/405\",[84,49.888]],[\"comment/405\",[]],[\"name/406\",[186,52.001]],[\"comment/406\",[]],[\"name/407\",[187,56.354]],[\"comment/407\",[]],[\"name/408\",[37,58.361]],[\"comment/408\",[]],[\"name/409\",[188,50.889]],[\"comment/409\",[]],[\"name/410\",[88,48.145]],[\"comment/410\",[]],[\"name/411\",[189,50.889]],[\"comment/411\",[]],[\"name/412\",[91,53.253]],[\"comment/412\",[]],[\"name/413\",[190,49.888]],[\"comment/413\",[]],[\"name/414\",[191,54.684]],[\"comment/414\",[]],[\"name/415\",[192,56.354]],[\"comment/415\",[]],[\"name/416\",[195,58.361]],[\"comment/416\",[]],[\"name/417\",[196,54.684]],[\"comment/417\",[]],[\"name/418\",[95,50.889]],[\"comment/418\",[]],[\"name/419\",[197,53.253]],[\"comment/419\",[]],[\"name/420\",[199,49.888]],[\"comment/420\",[]],[\"name/421\",[248,69.347]],[\"comment/421\",[]],[\"name/422\",[4,15.275]],[\"comment/422\",[]],[\"name/423\",[84,49.888]],[\"comment/423\",[]],[\"name/424\",[186,52.001]],[\"comment/424\",[]],[\"name/425\",[187,56.354]],[\"comment/425\",[]],[\"name/426\",[37,58.361]],[\"comment/426\",[]],[\"name/427\",[188,50.889]],[\"comment/427\",[]],[\"name/428\",[88,48.145]],[\"comment/428\",[]],[\"name/429\",[189,50.889]],[\"comment/429\",[]],[\"name/430\",[91,53.253]],[\"comment/430\",[]],[\"name/431\",[190,49.888]],[\"comment/431\",[]],[\"name/432\",[191,54.684]],[\"comment/432\",[]],[\"name/433\",[192,56.354]],[\"comment/433\",[]],[\"name/434\",[193,53.253]],[\"comment/434\",[]],[\"name/435\",[194,56.354]],[\"comment/435\",[]],[\"name/436\",[195,58.361]],[\"comment/436\",[]],[\"name/437\",[196,54.684]],[\"comment/437\",[]],[\"name/438\",[95,50.889]],[\"comment/438\",[]],[\"name/439\",[197,53.253]],[\"comment/439\",[]],[\"name/440\",[198,52.001]],[\"comment/440\",[]],[\"name/441\",[199,49.888]],[\"comment/441\",[]],[\"name/442\",[249,69.347]],[\"comment/442\",[]],[\"name/443\",[4,15.275]],[\"comment/443\",[]],[\"name/444\",[84,49.888]],[\"comment/444\",[]],[\"name/445\",[88,48.145]],[\"comment/445\",[]],[\"name/446\",[189,50.889]],[\"comment/446\",[]],[\"name/447\",[250,64.239]],[\"comment/447\",[]],[\"name/448\",[251,64.239]],[\"comment/448\",[]],[\"name/449\",[190,49.888]],[\"comment/449\",[]],[\"name/450\",[252,54.684]],[\"comment/450\",[]],[\"name/451\",[95,50.889]],[\"comment/451\",[]],[\"name/452\",[197,53.253]],[\"comment/452\",[]],[\"name/453\",[199,49.888]],[\"comment/453\",[]],[\"name/454\",[253,64.239]],[\"comment/454\",[]],[\"name/455\",[254,64.239]],[\"comment/455\",[]],[\"name/456\",[255,64.239]],[\"comment/456\",[]],[\"name/457\",[256,69.347]],[\"comment/457\",[]],[\"name/458\",[4,15.275]],[\"comment/458\",[]],[\"name/459\",[84,49.888]],[\"comment/459\",[]],[\"name/460\",[88,48.145]],[\"comment/460\",[]],[\"name/461\",[189,50.889]],[\"comment/461\",[]],[\"name/462\",[250,64.239]],[\"comment/462\",[]],[\"name/463\",[251,64.239]],[\"comment/463\",[]],[\"name/464\",[190,49.888]],[\"comment/464\",[]],[\"name/465\",[252,54.684]],[\"comment/465\",[]],[\"name/466\",[193,53.253]],[\"comment/466\",[]],[\"name/467\",[95,50.889]],[\"comment/467\",[]],[\"name/468\",[257,64.239]],[\"comment/468\",[]],[\"name/469\",[197,53.253]],[\"comment/469\",[]],[\"name/470\",[198,52.001]],[\"comment/470\",[]],[\"name/471\",[199,49.888]],[\"comment/471\",[]],[\"name/472\",[253,64.239]],[\"comment/472\",[]],[\"name/473\",[254,64.239]],[\"comment/473\",[]],[\"name/474\",[255,64.239]],[\"comment/474\",[]],[\"name/475\",[198,52.001]],[\"comment/475\",[]],[\"name/476\",[258,69.347]],[\"comment/476\",[]],[\"name/477\",[4,15.275]],[\"comment/477\",[]],[\"name/478\",[259,69.347]],[\"comment/478\",[]],[\"name/479\",[260,64.239]],[\"comment/479\",[]],[\"name/480\",[261,60.874]],[\"comment/480\",[]],[\"name/481\",[262,69.347]],[\"comment/481\",[]],[\"name/482\",[263,69.347]],[\"comment/482\",[]],[\"name/483\",[4,15.275]],[\"comment/483\",[]],[\"name/484\",[260,64.239]],[\"comment/484\",[]],[\"name/485\",[261,60.874]],[\"comment/485\",[]],[\"name/486\",[264,69.347]],[\"comment/486\",[]],[\"name/487\",[4,15.275]],[\"comment/487\",[]],[\"name/488\",[84,49.888]],[\"comment/488\",[]],[\"name/489\",[88,48.145]],[\"comment/489\",[]],[\"name/490\",[91,53.253]],[\"comment/490\",[]],[\"name/491\",[92,60.874]],[\"comment/491\",[]],[\"name/492\",[94,60.874]],[\"comment/492\",[]],[\"name/493\",[265,69.347]],[\"comment/493\",[]],[\"name/494\",[266,69.347]],[\"comment/494\",[]],[\"name/495\",[267,69.347]],[\"comment/495\",[]],[\"name/496\",[4,15.275]],[\"comment/496\",[]],[\"name/497\",[268,69.347]],[\"comment/497\",[]],[\"name/498\",[269,69.347]],[\"comment/498\",[]],[\"name/499\",[270,69.347]],[\"comment/499\",[]],[\"name/500\",[1,46.66]],[\"comment/500\",[]],[\"name/501\",[271,60.874]],[\"comment/501\",[]],[\"name/502\",[272,60.874]],[\"comment/502\",[]],[\"name/503\",[15,53.253]],[\"comment/503\",[]],[\"name/504\",[16,53.253]],[\"comment/504\",[]],[\"name/505\",[20,58.361]],[\"comment/505\",[]],[\"name/506\",[25,58.361]],[\"comment/506\",[]],[\"name/507\",[27,53.253]],[\"comment/507\",[]],[\"name/508\",[29,53.253]],[\"comment/508\",[]],[\"name/509\",[39,53.253]],[\"comment/509\",[]],[\"name/510\",[40,58.361]],[\"comment/510\",[]],[\"name/511\",[41,58.361]],[\"comment/511\",[]],[\"name/512\",[42,58.361]],[\"comment/512\",[]],[\"name/513\",[43,58.361]],[\"comment/513\",[]],[\"name/514\",[44,58.361]],[\"comment/514\",[]],[\"name/515\",[28,58.361]],[\"comment/515\",[]],[\"name/516\",[45,58.361]],[\"comment/516\",[]],[\"name/517\",[46,54.684]],[\"comment/517\",[]],[\"name/518\",[47,54.684]],[\"comment/518\",[]],[\"name/519\",[48,58.361]],[\"comment/519\",[]],[\"name/520\",[49,49.888]],[\"comment/520\",[]],[\"name/521\",[273,60.874]],[\"comment/521\",[]],[\"name/522\",[274,48.978]],[\"comment/522\",[]],[\"name/523\",[275,47.375]],[\"comment/523\",[]],[\"name/524\",[6,48.145]],[\"comment/524\",[]],[\"name/525\",[4,15.275]],[\"comment/525\",[]],[\"name/526\",[3,45.993]],[\"comment/526\",[]],[\"name/527\",[4,15.275]],[\"comment/527\",[]],[\"name/528\",[276,48.978]],[\"comment/528\",[]],[\"name/529\",[277,48.978]],[\"comment/529\",[]],[\"name/530\",[4,15.275]],[\"comment/530\",[]],[\"name/531\",[278,50.889]],[\"comment/531\",[]],[\"name/532\",[4,15.275]],[\"comment/532\",[]],[\"name/533\",[49,49.888]],[\"comment/533\",[]],[\"name/534\",[4,15.275]],[\"comment/534\",[]],[\"name/535\",[279,50.889]],[\"comment/535\",[]],[\"name/536\",[4,15.275]],[\"comment/536\",[]],[\"name/537\",[280,60.874]],[\"comment/537\",[]],[\"name/538\",[4,15.275]],[\"comment/538\",[]],[\"name/539\",[281,69.347]],[\"comment/539\",[]],[\"name/540\",[4,15.275]],[\"comment/540\",[]],[\"name/541\",[16,53.253]],[\"comment/541\",[]],[\"name/542\",[4,15.275]],[\"comment/542\",[]],[\"name/543\",[282,64.239]],[\"comment/543\",[]],[\"name/544\",[4,15.275]],[\"comment/544\",[]],[\"name/545\",[15,53.253]],[\"comment/545\",[]],[\"name/546\",[4,15.275]],[\"comment/546\",[]],[\"name/547\",[283,64.239]],[\"comment/547\",[]],[\"name/548\",[4,15.275]],[\"comment/548\",[]],[\"name/549\",[284,60.874]],[\"comment/549\",[]],[\"name/550\",[4,15.275]],[\"comment/550\",[]],[\"name/551\",[285,64.239]],[\"comment/551\",[]],[\"name/552\",[4,15.275]],[\"comment/552\",[]],[\"name/553\",[286,60.874]],[\"comment/553\",[]],[\"name/554\",[4,15.275]],[\"comment/554\",[]],[\"name/555\",[287,60.874]],[\"comment/555\",[]],[\"name/556\",[4,15.275]],[\"comment/556\",[]],[\"name/557\",[288,58.361]],[\"comment/557\",[]],[\"name/558\",[4,15.275]],[\"comment/558\",[]],[\"name/559\",[289,64.239]],[\"comment/559\",[]],[\"name/560\",[4,15.275]],[\"comment/560\",[]],[\"name/561\",[290,60.874]],[\"comment/561\",[]],[\"name/562\",[4,15.275]],[\"comment/562\",[]],[\"name/563\",[291,60.874]],[\"comment/563\",[]],[\"name/564\",[4,15.275]],[\"comment/564\",[]],[\"name/565\",[292,58.361]],[\"comment/565\",[]],[\"name/566\",[4,15.275]],[\"comment/566\",[]],[\"name/567\",[27,53.253]],[\"comment/567\",[]],[\"name/568\",[4,15.275]],[\"comment/568\",[]],[\"name/569\",[293,60.874]],[\"comment/569\",[]],[\"name/570\",[4,15.275]],[\"comment/570\",[]],[\"name/571\",[294,60.874]],[\"comment/571\",[]],[\"name/572\",[4,15.275]],[\"comment/572\",[]],[\"name/573\",[295,69.347]],[\"comment/573\",[]],[\"name/574\",[4,15.275]],[\"comment/574\",[]],[\"name/575\",[29,53.253]],[\"comment/575\",[]],[\"name/576\",[4,15.275]],[\"comment/576\",[]],[\"name/577\",[296,64.239]],[\"comment/577\",[]],[\"name/578\",[4,15.275]],[\"comment/578\",[]],[\"name/579\",[297,48.978]],[\"comment/579\",[]],[\"name/580\",[4,15.275]],[\"comment/580\",[]],[\"name/581\",[298,48.978]],[\"comment/581\",[]],[\"name/582\",[299,69.347]],[\"comment/582\",[]],[\"name/583\",[1,46.66]],[\"comment/583\",[]],[\"name/584\",[271,60.874]],[\"comment/584\",[]],[\"name/585\",[272,60.874]],[\"comment/585\",[]],[\"name/586\",[15,53.253]],[\"comment/586\",[]],[\"name/587\",[16,53.253]],[\"comment/587\",[]],[\"name/588\",[20,58.361]],[\"comment/588\",[]],[\"name/589\",[25,58.361]],[\"comment/589\",[]],[\"name/590\",[27,53.253]],[\"comment/590\",[]],[\"name/591\",[48,58.361]],[\"comment/591\",[]],[\"name/592\",[29,53.253]],[\"comment/592\",[]],[\"name/593\",[39,53.253]],[\"comment/593\",[]],[\"name/594\",[40,58.361]],[\"comment/594\",[]],[\"name/595\",[41,58.361]],[\"comment/595\",[]],[\"name/596\",[42,58.361]],[\"comment/596\",[]],[\"name/597\",[43,58.361]],[\"comment/597\",[]],[\"name/598\",[44,58.361]],[\"comment/598\",[]],[\"name/599\",[28,58.361]],[\"comment/599\",[]],[\"name/600\",[45,58.361]],[\"comment/600\",[]],[\"name/601\",[46,54.684]],[\"comment/601\",[]],[\"name/602\",[47,54.684]],[\"comment/602\",[]],[\"name/603\",[49,49.888]],[\"comment/603\",[]],[\"name/604\",[273,60.874]],[\"comment/604\",[]],[\"name/605\",[4,15.275]],[\"comment/605\",[]],[\"name/606\",[300,64.239]],[\"comment/606\",[]],[\"name/607\",[301,56.354]],[\"comment/607\",[]],[\"name/608\",[302,64.239]],[\"comment/608\",[]],[\"name/609\",[274,48.978]],[\"comment/609\",[]],[\"name/610\",[275,47.375]],[\"comment/610\",[]],[\"name/611\",[6,48.145]],[\"comment/611\",[]],[\"name/612\",[4,15.275]],[\"comment/612\",[]],[\"name/613\",[3,45.993]],[\"comment/613\",[]],[\"name/614\",[4,15.275]],[\"comment/614\",[]],[\"name/615\",[276,48.978]],[\"comment/615\",[]],[\"name/616\",[277,48.978]],[\"comment/616\",[]],[\"name/617\",[4,15.275]],[\"comment/617\",[]],[\"name/618\",[278,50.889]],[\"comment/618\",[]],[\"name/619\",[4,15.275]],[\"comment/619\",[]],[\"name/620\",[49,49.888]],[\"comment/620\",[]],[\"name/621\",[4,15.275]],[\"comment/621\",[]],[\"name/622\",[279,50.889]],[\"comment/622\",[]],[\"name/623\",[4,15.275]],[\"comment/623\",[]],[\"name/624\",[280,60.874]],[\"comment/624\",[]],[\"name/625\",[4,15.275]],[\"comment/625\",[]],[\"name/626\",[16,53.253]],[\"comment/626\",[]],[\"name/627\",[4,15.275]],[\"comment/627\",[]],[\"name/628\",[282,64.239]],[\"comment/628\",[]],[\"name/629\",[4,15.275]],[\"comment/629\",[]],[\"name/630\",[15,53.253]],[\"comment/630\",[]],[\"name/631\",[4,15.275]],[\"comment/631\",[]],[\"name/632\",[283,64.239]],[\"comment/632\",[]],[\"name/633\",[4,15.275]],[\"comment/633\",[]],[\"name/634\",[284,60.874]],[\"comment/634\",[]],[\"name/635\",[4,15.275]],[\"comment/635\",[]],[\"name/636\",[285,64.239]],[\"comment/636\",[]],[\"name/637\",[4,15.275]],[\"comment/637\",[]],[\"name/638\",[286,60.874]],[\"comment/638\",[]],[\"name/639\",[4,15.275]],[\"comment/639\",[]],[\"name/640\",[287,60.874]],[\"comment/640\",[]],[\"name/641\",[4,15.275]],[\"comment/641\",[]],[\"name/642\",[288,58.361]],[\"comment/642\",[]],[\"name/643\",[4,15.275]],[\"comment/643\",[]],[\"name/644\",[289,64.239]],[\"comment/644\",[]],[\"name/645\",[4,15.275]],[\"comment/645\",[]],[\"name/646\",[290,60.874]],[\"comment/646\",[]],[\"name/647\",[4,15.275]],[\"comment/647\",[]],[\"name/648\",[291,60.874]],[\"comment/648\",[]],[\"name/649\",[4,15.275]],[\"comment/649\",[]],[\"name/650\",[292,58.361]],[\"comment/650\",[]],[\"name/651\",[4,15.275]],[\"comment/651\",[]],[\"name/652\",[27,53.253]],[\"comment/652\",[]],[\"name/653\",[4,15.275]],[\"comment/653\",[]],[\"name/654\",[293,60.874]],[\"comment/654\",[]],[\"name/655\",[4,15.275]],[\"comment/655\",[]],[\"name/656\",[294,60.874]],[\"comment/656\",[]],[\"name/657\",[4,15.275]],[\"comment/657\",[]],[\"name/658\",[29,53.253]],[\"comment/658\",[]],[\"name/659\",[4,15.275]],[\"comment/659\",[]],[\"name/660\",[296,64.239]],[\"comment/660\",[]],[\"name/661\",[4,15.275]],[\"comment/661\",[]],[\"name/662\",[303,64.239]],[\"comment/662\",[]],[\"name/663\",[4,15.275]],[\"comment/663\",[]],[\"name/664\",[46,54.684]],[\"comment/664\",[]],[\"name/665\",[4,15.275]],[\"comment/665\",[]],[\"name/666\",[47,54.684]],[\"comment/666\",[]],[\"name/667\",[4,15.275]],[\"comment/667\",[]],[\"name/668\",[304,64.239]],[\"comment/668\",[]],[\"name/669\",[4,15.275]],[\"comment/669\",[]],[\"name/670\",[305,69.347]],[\"comment/670\",[]],[\"name/671\",[4,15.275]],[\"comment/671\",[]],[\"name/672\",[306,69.347]],[\"comment/672\",[]],[\"name/673\",[4,15.275]],[\"comment/673\",[]],[\"name/674\",[307,64.239]],[\"comment/674\",[]],[\"name/675\",[4,15.275]],[\"comment/675\",[]],[\"name/676\",[308,64.239]],[\"comment/676\",[]],[\"name/677\",[4,15.275]],[\"comment/677\",[]],[\"name/678\",[297,48.978]],[\"comment/678\",[]],[\"name/679\",[4,15.275]],[\"comment/679\",[]],[\"name/680\",[298,48.978]],[\"comment/680\",[]],[\"name/681\",[309,69.347]],[\"comment/681\",[]],[\"name/682\",[1,46.66]],[\"comment/682\",[]],[\"name/683\",[271,60.874]],[\"comment/683\",[]],[\"name/684\",[272,60.874]],[\"comment/684\",[]],[\"name/685\",[15,53.253]],[\"comment/685\",[]],[\"name/686\",[16,53.253]],[\"comment/686\",[]],[\"name/687\",[20,58.361]],[\"comment/687\",[]],[\"name/688\",[25,58.361]],[\"comment/688\",[]],[\"name/689\",[27,53.253]],[\"comment/689\",[]],[\"name/690\",[48,58.361]],[\"comment/690\",[]],[\"name/691\",[29,53.253]],[\"comment/691\",[]],[\"name/692\",[39,53.253]],[\"comment/692\",[]],[\"name/693\",[40,58.361]],[\"comment/693\",[]],[\"name/694\",[41,58.361]],[\"comment/694\",[]],[\"name/695\",[42,58.361]],[\"comment/695\",[]],[\"name/696\",[43,58.361]],[\"comment/696\",[]],[\"name/697\",[44,58.361]],[\"comment/697\",[]],[\"name/698\",[28,58.361]],[\"comment/698\",[]],[\"name/699\",[45,58.361]],[\"comment/699\",[]],[\"name/700\",[46,54.684]],[\"comment/700\",[]],[\"name/701\",[47,54.684]],[\"comment/701\",[]],[\"name/702\",[49,49.888]],[\"comment/702\",[]],[\"name/703\",[273,60.874]],[\"comment/703\",[]],[\"name/704\",[4,15.275]],[\"comment/704\",[]],[\"name/705\",[300,64.239]],[\"comment/705\",[]],[\"name/706\",[301,56.354]],[\"comment/706\",[]],[\"name/707\",[302,64.239]],[\"comment/707\",[]],[\"name/708\",[274,48.978]],[\"comment/708\",[]],[\"name/709\",[275,47.375]],[\"comment/709\",[]],[\"name/710\",[6,48.145]],[\"comment/710\",[]],[\"name/711\",[4,15.275]],[\"comment/711\",[]],[\"name/712\",[3,45.993]],[\"comment/712\",[]],[\"name/713\",[4,15.275]],[\"comment/713\",[]],[\"name/714\",[276,48.978]],[\"comment/714\",[]],[\"name/715\",[277,48.978]],[\"comment/715\",[]],[\"name/716\",[4,15.275]],[\"comment/716\",[]],[\"name/717\",[278,50.889]],[\"comment/717\",[]],[\"name/718\",[4,15.275]],[\"comment/718\",[]],[\"name/719\",[49,49.888]],[\"comment/719\",[]],[\"name/720\",[4,15.275]],[\"comment/720\",[]],[\"name/721\",[279,50.889]],[\"comment/721\",[]],[\"name/722\",[4,15.275]],[\"comment/722\",[]],[\"name/723\",[280,60.874]],[\"comment/723\",[]],[\"name/724\",[4,15.275]],[\"comment/724\",[]],[\"name/725\",[16,53.253]],[\"comment/725\",[]],[\"name/726\",[4,15.275]],[\"comment/726\",[]],[\"name/727\",[15,53.253]],[\"comment/727\",[]],[\"name/728\",[4,15.275]],[\"comment/728\",[]],[\"name/729\",[284,60.874]],[\"comment/729\",[]],[\"name/730\",[4,15.275]],[\"comment/730\",[]],[\"name/731\",[286,60.874]],[\"comment/731\",[]],[\"name/732\",[4,15.275]],[\"comment/732\",[]],[\"name/733\",[287,60.874]],[\"comment/733\",[]],[\"name/734\",[4,15.275]],[\"comment/734\",[]],[\"name/735\",[288,58.361]],[\"comment/735\",[]],[\"name/736\",[4,15.275]],[\"comment/736\",[]],[\"name/737\",[290,60.874]],[\"comment/737\",[]],[\"name/738\",[4,15.275]],[\"comment/738\",[]],[\"name/739\",[291,60.874]],[\"comment/739\",[]],[\"name/740\",[4,15.275]],[\"comment/740\",[]],[\"name/741\",[292,58.361]],[\"comment/741\",[]],[\"name/742\",[4,15.275]],[\"comment/742\",[]],[\"name/743\",[27,53.253]],[\"comment/743\",[]],[\"name/744\",[4,15.275]],[\"comment/744\",[]],[\"name/745\",[293,60.874]],[\"comment/745\",[]],[\"name/746\",[4,15.275]],[\"comment/746\",[]],[\"name/747\",[294,60.874]],[\"comment/747\",[]],[\"name/748\",[4,15.275]],[\"comment/748\",[]],[\"name/749\",[29,53.253]],[\"comment/749\",[]],[\"name/750\",[4,15.275]],[\"comment/750\",[]],[\"name/751\",[303,64.239]],[\"comment/751\",[]],[\"name/752\",[4,15.275]],[\"comment/752\",[]],[\"name/753\",[46,54.684]],[\"comment/753\",[]],[\"name/754\",[4,15.275]],[\"comment/754\",[]],[\"name/755\",[47,54.684]],[\"comment/755\",[]],[\"name/756\",[4,15.275]],[\"comment/756\",[]],[\"name/757\",[304,64.239]],[\"comment/757\",[]],[\"name/758\",[4,15.275]],[\"comment/758\",[]],[\"name/759\",[307,64.239]],[\"comment/759\",[]],[\"name/760\",[4,15.275]],[\"comment/760\",[]],[\"name/761\",[308,64.239]],[\"comment/761\",[]],[\"name/762\",[4,15.275]],[\"comment/762\",[]],[\"name/763\",[310,64.239]],[\"comment/763\",[]],[\"name/764\",[4,15.275]],[\"comment/764\",[]],[\"name/765\",[311,69.347]],[\"comment/765\",[]],[\"name/766\",[4,15.275]],[\"comment/766\",[]],[\"name/767\",[312,69.347]],[\"comment/767\",[]],[\"name/768\",[4,15.275]],[\"comment/768\",[]],[\"name/769\",[313,69.347]],[\"comment/769\",[]],[\"name/770\",[4,15.275]],[\"comment/770\",[]],[\"name/771\",[297,48.978]],[\"comment/771\",[]],[\"name/772\",[4,15.275]],[\"comment/772\",[]],[\"name/773\",[298,48.978]],[\"comment/773\",[]],[\"name/774\",[314,69.347]],[\"comment/774\",[]],[\"name/775\",[315,69.347]],[\"comment/775\",[]],[\"name/776\",[1,46.66]],[\"comment/776\",[]],[\"name/777\",[50,53.253]],[\"comment/777\",[]],[\"name/778\",[39,53.253]],[\"comment/778\",[]],[\"name/779\",[52,58.361]],[\"comment/779\",[]],[\"name/780\",[51,53.253]],[\"comment/780\",[]],[\"name/781\",[274,48.978]],[\"comment/781\",[]],[\"name/782\",[275,47.375]],[\"comment/782\",[]],[\"name/783\",[6,48.145]],[\"comment/783\",[]],[\"name/784\",[4,15.275]],[\"comment/784\",[]],[\"name/785\",[3,45.993]],[\"comment/785\",[]],[\"name/786\",[4,15.275]],[\"comment/786\",[]],[\"name/787\",[276,48.978]],[\"comment/787\",[]],[\"name/788\",[277,48.978]],[\"comment/788\",[]],[\"name/789\",[4,15.275]],[\"comment/789\",[]],[\"name/790\",[278,50.889]],[\"comment/790\",[]],[\"name/791\",[4,15.275]],[\"comment/791\",[]],[\"name/792\",[316,60.874]],[\"comment/792\",[]],[\"name/793\",[4,15.275]],[\"comment/793\",[]],[\"name/794\",[49,49.888]],[\"comment/794\",[]],[\"name/795\",[4,15.275]],[\"comment/795\",[]],[\"name/796\",[279,50.889]],[\"comment/796\",[]],[\"name/797\",[4,15.275]],[\"comment/797\",[]],[\"name/798\",[50,53.253]],[\"comment/798\",[]],[\"name/799\",[4,15.275]],[\"comment/799\",[]],[\"name/800\",[317,60.874]],[\"comment/800\",[]],[\"name/801\",[4,15.275]],[\"comment/801\",[]],[\"name/802\",[51,53.253]],[\"comment/802\",[]],[\"name/803\",[4,15.275]],[\"comment/803\",[]],[\"name/804\",[318,60.874]],[\"comment/804\",[]],[\"name/805\",[4,15.275]],[\"comment/805\",[]],[\"name/806\",[297,48.978]],[\"comment/806\",[]],[\"name/807\",[4,15.275]],[\"comment/807\",[]],[\"name/808\",[298,48.978]],[\"comment/808\",[]],[\"name/809\",[319,69.347]],[\"comment/809\",[]],[\"name/810\",[1,46.66]],[\"comment/810\",[]],[\"name/811\",[50,53.253]],[\"comment/811\",[]],[\"name/812\",[39,53.253]],[\"comment/812\",[]],[\"name/813\",[52,58.361]],[\"comment/813\",[]],[\"name/814\",[51,53.253]],[\"comment/814\",[]],[\"name/815\",[274,48.978]],[\"comment/815\",[]],[\"name/816\",[275,47.375]],[\"comment/816\",[]],[\"name/817\",[6,48.145]],[\"comment/817\",[]],[\"name/818\",[4,15.275]],[\"comment/818\",[]],[\"name/819\",[3,45.993]],[\"comment/819\",[]],[\"name/820\",[4,15.275]],[\"comment/820\",[]],[\"name/821\",[276,48.978]],[\"comment/821\",[]],[\"name/822\",[277,48.978]],[\"comment/822\",[]],[\"name/823\",[4,15.275]],[\"comment/823\",[]],[\"name/824\",[278,50.889]],[\"comment/824\",[]],[\"name/825\",[4,15.275]],[\"comment/825\",[]],[\"name/826\",[316,60.874]],[\"comment/826\",[]],[\"name/827\",[4,15.275]],[\"comment/827\",[]],[\"name/828\",[49,49.888]],[\"comment/828\",[]],[\"name/829\",[4,15.275]],[\"comment/829\",[]],[\"name/830\",[279,50.889]],[\"comment/830\",[]],[\"name/831\",[4,15.275]],[\"comment/831\",[]],[\"name/832\",[50,53.253]],[\"comment/832\",[]],[\"name/833\",[4,15.275]],[\"comment/833\",[]],[\"name/834\",[317,60.874]],[\"comment/834\",[]],[\"name/835\",[4,15.275]],[\"comment/835\",[]],[\"name/836\",[51,53.253]],[\"comment/836\",[]],[\"name/837\",[4,15.275]],[\"comment/837\",[]],[\"name/838\",[318,60.874]],[\"comment/838\",[]],[\"name/839\",[4,15.275]],[\"comment/839\",[]],[\"name/840\",[320,64.239]],[\"comment/840\",[]],[\"name/841\",[4,15.275]],[\"comment/841\",[]],[\"name/842\",[297,48.978]],[\"comment/842\",[]],[\"name/843\",[4,15.275]],[\"comment/843\",[]],[\"name/844\",[298,48.978]],[\"comment/844\",[]],[\"name/845\",[321,69.347]],[\"comment/845\",[]],[\"name/846\",[1,46.66]],[\"comment/846\",[]],[\"name/847\",[50,53.253]],[\"comment/847\",[]],[\"name/848\",[39,53.253]],[\"comment/848\",[]],[\"name/849\",[52,58.361]],[\"comment/849\",[]],[\"name/850\",[51,53.253]],[\"comment/850\",[]],[\"name/851\",[274,48.978]],[\"comment/851\",[]],[\"name/852\",[275,47.375]],[\"comment/852\",[]],[\"name/853\",[6,48.145]],[\"comment/853\",[]],[\"name/854\",[4,15.275]],[\"comment/854\",[]],[\"name/855\",[3,45.993]],[\"comment/855\",[]],[\"name/856\",[4,15.275]],[\"comment/856\",[]],[\"name/857\",[276,48.978]],[\"comment/857\",[]],[\"name/858\",[277,48.978]],[\"comment/858\",[]],[\"name/859\",[4,15.275]],[\"comment/859\",[]],[\"name/860\",[278,50.889]],[\"comment/860\",[]],[\"name/861\",[4,15.275]],[\"comment/861\",[]],[\"name/862\",[316,60.874]],[\"comment/862\",[]],[\"name/863\",[4,15.275]],[\"comment/863\",[]],[\"name/864\",[49,49.888]],[\"comment/864\",[]],[\"name/865\",[4,15.275]],[\"comment/865\",[]],[\"name/866\",[279,50.889]],[\"comment/866\",[]],[\"name/867\",[4,15.275]],[\"comment/867\",[]],[\"name/868\",[50,53.253]],[\"comment/868\",[]],[\"name/869\",[4,15.275]],[\"comment/869\",[]],[\"name/870\",[317,60.874]],[\"comment/870\",[]],[\"name/871\",[4,15.275]],[\"comment/871\",[]],[\"name/872\",[51,53.253]],[\"comment/872\",[]],[\"name/873\",[4,15.275]],[\"comment/873\",[]],[\"name/874\",[318,60.874]],[\"comment/874\",[]],[\"name/875\",[4,15.275]],[\"comment/875\",[]],[\"name/876\",[320,64.239]],[\"comment/876\",[]],[\"name/877\",[4,15.275]],[\"comment/877\",[]],[\"name/878\",[322,69.347]],[\"comment/878\",[]],[\"name/879\",[4,15.275]],[\"comment/879\",[]],[\"name/880\",[323,69.347]],[\"comment/880\",[]],[\"name/881\",[4,15.275]],[\"comment/881\",[]],[\"name/882\",[297,48.978]],[\"comment/882\",[]],[\"name/883\",[4,15.275]],[\"comment/883\",[]],[\"name/884\",[298,48.978]],[\"comment/884\",[]],[\"name/885\",[153,64.239]],[\"comment/885\",[]],[\"name/886\",[1,46.66]],[\"comment/886\",[]],[\"name/887\",[324,58.361]],[\"comment/887\",[]],[\"name/888\",[325,64.239]],[\"comment/888\",[]],[\"name/889\",[326,58.361]],[\"comment/889\",[]],[\"name/890\",[327,60.874]],[\"comment/890\",[]],[\"name/891\",[274,48.978]],[\"comment/891\",[]],[\"name/892\",[275,47.375]],[\"comment/892\",[]],[\"name/893\",[6,48.145]],[\"comment/893\",[]],[\"name/894\",[4,15.275]],[\"comment/894\",[]],[\"name/895\",[3,45.993]],[\"comment/895\",[]],[\"name/896\",[4,15.275]],[\"comment/896\",[]],[\"name/897\",[276,48.978]],[\"comment/897\",[]],[\"name/898\",[277,48.978]],[\"comment/898\",[]],[\"name/899\",[4,15.275]],[\"comment/899\",[]],[\"name/900\",[278,50.889]],[\"comment/900\",[]],[\"name/901\",[4,15.275]],[\"comment/901\",[]],[\"name/902\",[279,50.889]],[\"comment/902\",[]],[\"name/903\",[4,15.275]],[\"comment/903\",[]],[\"name/904\",[328,60.874]],[\"comment/904\",[]],[\"name/905\",[4,15.275]],[\"comment/905\",[]],[\"name/906\",[329,60.874]],[\"comment/906\",[]],[\"name/907\",[4,15.275]],[\"comment/907\",[]],[\"name/908\",[330,60.874]],[\"comment/908\",[]],[\"name/909\",[4,15.275]],[\"comment/909\",[]],[\"name/910\",[331,60.874]],[\"comment/910\",[]],[\"name/911\",[4,15.275]],[\"comment/911\",[]],[\"name/912\",[332,64.239]],[\"comment/912\",[]],[\"name/913\",[4,15.275]],[\"comment/913\",[]],[\"name/914\",[333,64.239]],[\"comment/914\",[]],[\"name/915\",[4,15.275]],[\"comment/915\",[]],[\"name/916\",[324,58.361]],[\"comment/916\",[]],[\"name/917\",[4,15.275]],[\"comment/917\",[]],[\"name/918\",[334,64.239]],[\"comment/918\",[]],[\"name/919\",[4,15.275]],[\"comment/919\",[]],[\"name/920\",[335,64.239]],[\"comment/920\",[]],[\"name/921\",[4,15.275]],[\"comment/921\",[]],[\"name/922\",[326,58.361]],[\"comment/922\",[]],[\"name/923\",[4,15.275]],[\"comment/923\",[]],[\"name/924\",[336,64.239]],[\"comment/924\",[]],[\"name/925\",[4,15.275]],[\"comment/925\",[]],[\"name/926\",[337,64.239]],[\"comment/926\",[]],[\"name/927\",[4,15.275]],[\"comment/927\",[]],[\"name/928\",[338,64.239]],[\"comment/928\",[]],[\"name/929\",[4,15.275]],[\"comment/929\",[]],[\"name/930\",[339,64.239]],[\"comment/930\",[]],[\"name/931\",[4,15.275]],[\"comment/931\",[]],[\"name/932\",[340,64.239]],[\"comment/932\",[]],[\"name/933\",[4,15.275]],[\"comment/933\",[]],[\"name/934\",[341,64.239]],[\"comment/934\",[]],[\"name/935\",[4,15.275]],[\"comment/935\",[]],[\"name/936\",[297,48.978]],[\"comment/936\",[]],[\"name/937\",[4,15.275]],[\"comment/937\",[]],[\"name/938\",[298,48.978]],[\"comment/938\",[]],[\"name/939\",[154,64.239]],[\"comment/939\",[]],[\"name/940\",[1,46.66]],[\"comment/940\",[]],[\"name/941\",[324,58.361]],[\"comment/941\",[]],[\"name/942\",[325,64.239]],[\"comment/942\",[]],[\"name/943\",[326,58.361]],[\"comment/943\",[]],[\"name/944\",[327,60.874]],[\"comment/944\",[]],[\"name/945\",[274,48.978]],[\"comment/945\",[]],[\"name/946\",[275,47.375]],[\"comment/946\",[]],[\"name/947\",[6,48.145]],[\"comment/947\",[]],[\"name/948\",[4,15.275]],[\"comment/948\",[]],[\"name/949\",[3,45.993]],[\"comment/949\",[]],[\"name/950\",[4,15.275]],[\"comment/950\",[]],[\"name/951\",[276,48.978]],[\"comment/951\",[]],[\"name/952\",[277,48.978]],[\"comment/952\",[]],[\"name/953\",[4,15.275]],[\"comment/953\",[]],[\"name/954\",[278,50.889]],[\"comment/954\",[]],[\"name/955\",[4,15.275]],[\"comment/955\",[]],[\"name/956\",[279,50.889]],[\"comment/956\",[]],[\"name/957\",[4,15.275]],[\"comment/957\",[]],[\"name/958\",[328,60.874]],[\"comment/958\",[]],[\"name/959\",[4,15.275]],[\"comment/959\",[]],[\"name/960\",[329,60.874]],[\"comment/960\",[]],[\"name/961\",[4,15.275]],[\"comment/961\",[]],[\"name/962\",[330,60.874]],[\"comment/962\",[]],[\"name/963\",[4,15.275]],[\"comment/963\",[]],[\"name/964\",[331,60.874]],[\"comment/964\",[]],[\"name/965\",[4,15.275]],[\"comment/965\",[]],[\"name/966\",[332,64.239]],[\"comment/966\",[]],[\"name/967\",[4,15.275]],[\"comment/967\",[]],[\"name/968\",[333,64.239]],[\"comment/968\",[]],[\"name/969\",[4,15.275]],[\"comment/969\",[]],[\"name/970\",[324,58.361]],[\"comment/970\",[]],[\"name/971\",[4,15.275]],[\"comment/971\",[]],[\"name/972\",[334,64.239]],[\"comment/972\",[]],[\"name/973\",[4,15.275]],[\"comment/973\",[]],[\"name/974\",[335,64.239]],[\"comment/974\",[]],[\"name/975\",[4,15.275]],[\"comment/975\",[]],[\"name/976\",[326,58.361]],[\"comment/976\",[]],[\"name/977\",[4,15.275]],[\"comment/977\",[]],[\"name/978\",[336,64.239]],[\"comment/978\",[]],[\"name/979\",[4,15.275]],[\"comment/979\",[]],[\"name/980\",[337,64.239]],[\"comment/980\",[]],[\"name/981\",[4,15.275]],[\"comment/981\",[]],[\"name/982\",[338,64.239]],[\"comment/982\",[]],[\"name/983\",[4,15.275]],[\"comment/983\",[]],[\"name/984\",[339,64.239]],[\"comment/984\",[]],[\"name/985\",[4,15.275]],[\"comment/985\",[]],[\"name/986\",[340,64.239]],[\"comment/986\",[]],[\"name/987\",[4,15.275]],[\"comment/987\",[]],[\"name/988\",[341,64.239]],[\"comment/988\",[]],[\"name/989\",[4,15.275]],[\"comment/989\",[]],[\"name/990\",[342,69.347]],[\"comment/990\",[]],[\"name/991\",[4,15.275]],[\"comment/991\",[]],[\"name/992\",[327,60.874]],[\"comment/992\",[]],[\"name/993\",[4,15.275]],[\"comment/993\",[]],[\"name/994\",[343,69.347]],[\"comment/994\",[]],[\"name/995\",[4,15.275]],[\"comment/995\",[]],[\"name/996\",[344,69.347]],[\"comment/996\",[]],[\"name/997\",[4,15.275]],[\"comment/997\",[]],[\"name/998\",[345,69.347]],[\"comment/998\",[]],[\"name/999\",[4,15.275]],[\"comment/999\",[]],[\"name/1000\",[346,69.347]],[\"comment/1000\",[]],[\"name/1001\",[4,15.275]],[\"comment/1001\",[]],[\"name/1002\",[297,48.978]],[\"comment/1002\",[]],[\"name/1003\",[4,15.275]],[\"comment/1003\",[]],[\"name/1004\",[298,48.978]],[\"comment/1004\",[]],[\"name/1005\",[159,64.239]],[\"comment/1005\",[]],[\"name/1006\",[347,69.347]],[\"comment/1006\",[]],[\"name/1007\",[4,15.275]],[\"comment/1007\",[]],[\"name/1008\",[348,69.347]],[\"comment/1008\",[]],[\"name/1009\",[349,64.239]],[\"comment/1009\",[]],[\"name/1010\",[350,69.347]],[\"comment/1010\",[]],[\"name/1011\",[1,46.66]],[\"comment/1011\",[]],[\"name/1012\",[9,60.874]],[\"comment/1012\",[]],[\"name/1013\",[351,64.239]],[\"comment/1013\",[]],[\"name/1014\",[274,48.978]],[\"comment/1014\",[]],[\"name/1015\",[275,47.375]],[\"comment/1015\",[]],[\"name/1016\",[6,48.145]],[\"comment/1016\",[]],[\"name/1017\",[4,15.275]],[\"comment/1017\",[]],[\"name/1018\",[3,45.993]],[\"comment/1018\",[]],[\"name/1019\",[4,15.275]],[\"comment/1019\",[]],[\"name/1020\",[276,48.978]],[\"comment/1020\",[]],[\"name/1021\",[277,48.978]],[\"comment/1021\",[]],[\"name/1022\",[4,15.275]],[\"comment/1022\",[]],[\"name/1023\",[278,50.889]],[\"comment/1023\",[]],[\"name/1024\",[4,15.275]],[\"comment/1024\",[]],[\"name/1025\",[279,50.889]],[\"comment/1025\",[]],[\"name/1026\",[4,15.275]],[\"comment/1026\",[]],[\"name/1027\",[288,58.361]],[\"comment/1027\",[]],[\"name/1028\",[4,15.275]],[\"comment/1028\",[]],[\"name/1029\",[292,58.361]],[\"comment/1029\",[]],[\"name/1030\",[4,15.275]],[\"comment/1030\",[]],[\"name/1031\",[352,69.347]],[\"comment/1031\",[]],[\"name/1032\",[4,15.275]],[\"comment/1032\",[]],[\"name/1033\",[353,69.347]],[\"comment/1033\",[]],[\"name/1034\",[4,15.275]],[\"comment/1034\",[]],[\"name/1035\",[354,69.347]],[\"comment/1035\",[]],[\"name/1036\",[4,15.275]],[\"comment/1036\",[]],[\"name/1037\",[355,69.347]],[\"comment/1037\",[]],[\"name/1038\",[4,15.275]],[\"comment/1038\",[]],[\"name/1039\",[356,69.347]],[\"comment/1039\",[]],[\"name/1040\",[4,15.275]],[\"comment/1040\",[]],[\"name/1041\",[357,69.347]],[\"comment/1041\",[]],[\"name/1042\",[4,15.275]],[\"comment/1042\",[]],[\"name/1043\",[310,64.239]],[\"comment/1043\",[]],[\"name/1044\",[4,15.275]],[\"comment/1044\",[]],[\"name/1045\",[351,64.239]],[\"comment/1045\",[]],[\"name/1046\",[4,15.275]],[\"comment/1046\",[]],[\"name/1047\",[358,69.347]],[\"comment/1047\",[]],[\"name/1048\",[4,15.275]],[\"comment/1048\",[]],[\"name/1049\",[359,69.347]],[\"comment/1049\",[]],[\"name/1050\",[4,15.275]],[\"comment/1050\",[]],[\"name/1051\",[297,48.978]],[\"comment/1051\",[]],[\"name/1052\",[4,15.275]],[\"comment/1052\",[]],[\"name/1053\",[298,48.978]],[\"comment/1053\",[]],[\"name/1054\",[360,69.347]],[\"comment/1054\",[]],[\"name/1055\",[1,46.66]],[\"comment/1055\",[]],[\"name/1056\",[274,48.978]],[\"comment/1056\",[]],[\"name/1057\",[275,47.375]],[\"comment/1057\",[]],[\"name/1058\",[6,48.145]],[\"comment/1058\",[]],[\"name/1059\",[4,15.275]],[\"comment/1059\",[]],[\"name/1060\",[3,45.993]],[\"comment/1060\",[]],[\"name/1061\",[4,15.275]],[\"comment/1061\",[]],[\"name/1062\",[276,48.978]],[\"comment/1062\",[]],[\"name/1063\",[277,48.978]],[\"comment/1063\",[]],[\"name/1064\",[297,48.978]],[\"comment/1064\",[]],[\"name/1065\",[4,15.275]],[\"comment/1065\",[]],[\"name/1066\",[298,48.978]],[\"comment/1066\",[]],[\"name/1067\",[361,69.347]],[\"comment/1067\",[]],[\"name/1068\",[160,64.239]],[\"comment/1068\",[]],[\"name/1069\",[1,46.66]],[\"comment/1069\",[]],[\"name/1070\",[65,64.239]],[\"comment/1070\",[]],[\"name/1071\",[362,64.239]],[\"comment/1071\",[]],[\"name/1072\",[274,48.978]],[\"comment/1072\",[]],[\"name/1073\",[275,47.375]],[\"comment/1073\",[]],[\"name/1074\",[6,48.145]],[\"comment/1074\",[]],[\"name/1075\",[4,15.275]],[\"comment/1075\",[]],[\"name/1076\",[3,45.993]],[\"comment/1076\",[]],[\"name/1077\",[4,15.275]],[\"comment/1077\",[]],[\"name/1078\",[276,48.978]],[\"comment/1078\",[]],[\"name/1079\",[277,48.978]],[\"comment/1079\",[]],[\"name/1080\",[4,15.275]],[\"comment/1080\",[]],[\"name/1081\",[328,60.874]],[\"comment/1081\",[]],[\"name/1082\",[4,15.275]],[\"comment/1082\",[]],[\"name/1083\",[329,60.874]],[\"comment/1083\",[]],[\"name/1084\",[4,15.275]],[\"comment/1084\",[]],[\"name/1085\",[330,60.874]],[\"comment/1085\",[]],[\"name/1086\",[4,15.275]],[\"comment/1086\",[]],[\"name/1087\",[331,60.874]],[\"comment/1087\",[]],[\"name/1088\",[4,15.275]],[\"comment/1088\",[]],[\"name/1089\",[362,64.239]],[\"comment/1089\",[]],[\"name/1090\",[4,15.275]],[\"comment/1090\",[]],[\"name/1091\",[363,69.347]],[\"comment/1091\",[]],[\"name/1092\",[4,15.275]],[\"comment/1092\",[]],[\"name/1093\",[364,69.347]],[\"comment/1093\",[]],[\"name/1094\",[4,15.275]],[\"comment/1094\",[]],[\"name/1095\",[365,69.347]],[\"comment/1095\",[]],[\"name/1096\",[4,15.275]],[\"comment/1096\",[]],[\"name/1097\",[297,48.978]],[\"comment/1097\",[]],[\"name/1098\",[4,15.275]],[\"comment/1098\",[]],[\"name/1099\",[298,48.978]],[\"comment/1099\",[]],[\"name/1100\",[366,69.347]],[\"comment/1100\",[]],[\"name/1101\",[4,15.275]],[\"comment/1101\",[]],[\"name/1102\",[144,64.239]],[\"comment/1102\",[]],[\"name/1103\",[3,45.993]],[\"comment/1103\",[]],[\"name/1104\",[367,69.347]],[\"comment/1104\",[]],[\"name/1105\",[4,15.275]],[\"comment/1105\",[]],[\"name/1106\",[211,32.542]],[\"comment/1106\",[]],[\"name/1107\",[368,53.253]],[\"comment/1107\",[]],[\"name/1108\",[4,15.275]],[\"comment/1108\",[]],[\"name/1109\",[211,32.542]],[\"comment/1109\",[]],[\"name/1110\",[193,53.253]],[\"comment/1110\",[]],[\"name/1111\",[194,56.354]],[\"comment/1111\",[]],[\"name/1112\",[190,49.888]],[\"comment/1112\",[]],[\"name/1113\",[199,49.888]],[\"comment/1113\",[]],[\"name/1114\",[186,52.001]],[\"comment/1114\",[]],[\"name/1115\",[369,60.874]],[\"comment/1115\",[]],[\"name/1116\",[125,48.145]],[\"comment/1116\",[]],[\"name/1117\",[4,15.275]],[\"comment/1117\",[]],[\"name/1118\",[211,32.542]],[\"comment/1118\",[]],[\"name/1119\",[244,58.361]],[\"comment/1119\",[]],[\"name/1120\",[4,15.275]],[\"comment/1120\",[]],[\"name/1121\",[211,32.542]],[\"comment/1121\",[]],[\"name/1122\",[188,50.889]],[\"comment/1122\",[]],[\"name/1123\",[370,69.347]],[\"comment/1123\",[]],[\"name/1124\",[4,15.275]],[\"comment/1124\",[]],[\"name/1125\",[211,32.542]],[\"comment/1125\",[]],[\"name/1126\",[368,53.253]],[\"comment/1126\",[]],[\"name/1127\",[4,15.275]],[\"comment/1127\",[]],[\"name/1128\",[211,32.542]],[\"comment/1128\",[]],[\"name/1129\",[217,45.993]],[\"comment/1129\",[]],[\"name/1130\",[97,52.001]],[\"comment/1130\",[]],[\"name/1131\",[125,48.145]],[\"comment/1131\",[]],[\"name/1132\",[4,15.275]],[\"comment/1132\",[]],[\"name/1133\",[211,32.542]],[\"comment/1133\",[]],[\"name/1134\",[244,58.361]],[\"comment/1134\",[]],[\"name/1135\",[4,15.275]],[\"comment/1135\",[]],[\"name/1136\",[211,32.542]],[\"comment/1136\",[]],[\"name/1137\",[188,50.889]],[\"comment/1137\",[]],[\"name/1138\",[371,69.347]],[\"comment/1138\",[]],[\"name/1139\",[4,15.275]],[\"comment/1139\",[]],[\"name/1140\",[211,32.542]],[\"comment/1140\",[]],[\"name/1141\",[368,53.253]],[\"comment/1141\",[]],[\"name/1142\",[4,15.275]],[\"comment/1142\",[]],[\"name/1143\",[211,32.542]],[\"comment/1143\",[]],[\"name/1144\",[193,53.253]],[\"comment/1144\",[]],[\"name/1145\",[194,56.354]],[\"comment/1145\",[]],[\"name/1146\",[190,49.888]],[\"comment/1146\",[]],[\"name/1147\",[199,49.888]],[\"comment/1147\",[]],[\"name/1148\",[186,52.001]],[\"comment/1148\",[]],[\"name/1149\",[369,60.874]],[\"comment/1149\",[]],[\"name/1150\",[123,52.001]],[\"comment/1150\",[]],[\"name/1151\",[4,15.275]],[\"comment/1151\",[]],[\"name/1152\",[211,32.542]],[\"comment/1152\",[]],[\"name/1153\",[208,54.684]],[\"comment/1153\",[]],[\"name/1154\",[125,48.145]],[\"comment/1154\",[]],[\"name/1155\",[372,69.347]],[\"comment/1155\",[]],[\"name/1156\",[4,15.275]],[\"comment/1156\",[]],[\"name/1157\",[211,32.542]],[\"comment/1157\",[]],[\"name/1158\",[368,53.253]],[\"comment/1158\",[]],[\"name/1159\",[4,15.275]],[\"comment/1159\",[]],[\"name/1160\",[211,32.542]],[\"comment/1160\",[]],[\"name/1161\",[217,45.993]],[\"comment/1161\",[]],[\"name/1162\",[97,52.001]],[\"comment/1162\",[]],[\"name/1163\",[123,52.001]],[\"comment/1163\",[]],[\"name/1164\",[4,15.275]],[\"comment/1164\",[]],[\"name/1165\",[211,32.542]],[\"comment/1165\",[]],[\"name/1166\",[208,54.684]],[\"comment/1166\",[]],[\"name/1167\",[125,48.145]],[\"comment/1167\",[]],[\"name/1168\",[373,69.347]],[\"comment/1168\",[]],[\"name/1169\",[4,15.275]],[\"comment/1169\",[]],[\"name/1170\",[211,32.542]],[\"comment/1170\",[]],[\"name/1171\",[374,60.874]],[\"comment/1171\",[]],[\"name/1172\",[375,69.347]],[\"comment/1172\",[]],[\"name/1173\",[4,15.275]],[\"comment/1173\",[]],[\"name/1174\",[211,32.542]],[\"comment/1174\",[]],[\"name/1175\",[368,53.253]],[\"comment/1175\",[]],[\"name/1176\",[4,15.275]],[\"comment/1176\",[]],[\"name/1177\",[211,32.542]],[\"comment/1177\",[]],[\"name/1178\",[252,54.684]],[\"comment/1178\",[]],[\"name/1179\",[257,64.239]],[\"comment/1179\",[]],[\"name/1180\",[193,53.253]],[\"comment/1180\",[]],[\"name/1181\",[190,49.888]],[\"comment/1181\",[]],[\"name/1182\",[199,49.888]],[\"comment/1182\",[]],[\"name/1183\",[123,52.001]],[\"comment/1183\",[]],[\"name/1184\",[4,15.275]],[\"comment/1184\",[]],[\"name/1185\",[211,32.542]],[\"comment/1185\",[]],[\"name/1186\",[208,54.684]],[\"comment/1186\",[]],[\"name/1187\",[125,48.145]],[\"comment/1187\",[]],[\"name/1188\",[376,69.347]],[\"comment/1188\",[]],[\"name/1189\",[4,15.275]],[\"comment/1189\",[]],[\"name/1190\",[211,32.542]],[\"comment/1190\",[]],[\"name/1191\",[377,69.347]],[\"comment/1191\",[]],[\"name/1192\",[4,15.275]],[\"comment/1192\",[]],[\"name/1193\",[211,32.542]],[\"comment/1193\",[]],[\"name/1194\",[217,45.993]],[\"comment/1194\",[]],[\"name/1195\",[97,52.001]],[\"comment/1195\",[]],[\"name/1196\",[378,69.347]],[\"comment/1196\",[]],[\"name/1197\",[4,15.275]],[\"comment/1197\",[]],[\"name/1198\",[211,32.542]],[\"comment/1198\",[]],[\"name/1199\",[36,52.001]],[\"comment/1199\",[]],[\"name/1200\",[4,15.275]],[\"comment/1200\",[]],[\"name/1201\",[211,32.542]],[\"comment/1201\",[]],[\"name/1202\",[379,56.354]],[\"comment/1202\",[]],[\"name/1203\",[4,15.275]],[\"comment/1203\",[]],[\"name/1204\",[211,32.542]],[\"comment/1204\",[]],[\"name/1205\",[380,56.354]],[\"comment/1205\",[]],[\"name/1206\",[381,56.354]],[\"comment/1206\",[]],[\"name/1207\",[382,56.354]],[\"comment/1207\",[]],[\"name/1208\",[383,69.347]],[\"comment/1208\",[]],[\"name/1209\",[4,15.275]],[\"comment/1209\",[]],[\"name/1210\",[211,32.542]],[\"comment/1210\",[]],[\"name/1211\",[125,48.145]],[\"comment/1211\",[]],[\"name/1212\",[384,69.347]],[\"comment/1212\",[]],[\"name/1213\",[4,15.275]],[\"comment/1213\",[]],[\"name/1214\",[211,32.542]],[\"comment/1214\",[]],[\"name/1215\",[36,52.001]],[\"comment/1215\",[]],[\"name/1216\",[385,69.347]],[\"comment/1216\",[]],[\"name/1217\",[4,15.275]],[\"comment/1217\",[]],[\"name/1218\",[211,32.542]],[\"comment/1218\",[]],[\"name/1219\",[125,48.145]],[\"comment/1219\",[]],[\"name/1220\",[386,69.347]],[\"comment/1220\",[]],[\"name/1221\",[4,15.275]],[\"comment/1221\",[]],[\"name/1222\",[211,32.542]],[\"comment/1222\",[]],[\"name/1223\",[374,60.874]],[\"comment/1223\",[]],[\"name/1224\",[4,15.275]],[\"comment/1224\",[]],[\"name/1225\",[211,32.542]],[\"comment/1225\",[]],[\"name/1226\",[379,56.354]],[\"comment/1226\",[]],[\"name/1227\",[4,15.275]],[\"comment/1227\",[]],[\"name/1228\",[211,32.542]],[\"comment/1228\",[]],[\"name/1229\",[380,56.354]],[\"comment/1229\",[]],[\"name/1230\",[381,56.354]],[\"comment/1230\",[]],[\"name/1231\",[382,56.354]],[\"comment/1231\",[]],[\"name/1232\",[387,69.347]],[\"comment/1232\",[]],[\"name/1233\",[4,15.275]],[\"comment/1233\",[]],[\"name/1234\",[211,32.542]],[\"comment/1234\",[]],[\"name/1235\",[31,64.239]],[\"comment/1235\",[]],[\"name/1236\",[4,15.275]],[\"comment/1236\",[]],[\"name/1237\",[211,32.542]],[\"comment/1237\",[]],[\"name/1238\",[388,69.347]],[\"comment/1238\",[]],[\"name/1239\",[379,56.354]],[\"comment/1239\",[]],[\"name/1240\",[4,15.275]],[\"comment/1240\",[]],[\"name/1241\",[211,32.542]],[\"comment/1241\",[]],[\"name/1242\",[380,56.354]],[\"comment/1242\",[]],[\"name/1243\",[381,56.354]],[\"comment/1243\",[]],[\"name/1244\",[382,56.354]],[\"comment/1244\",[]],[\"name/1245\",[389,69.347]],[\"comment/1245\",[]],[\"name/1246\",[4,15.275]],[\"comment/1246\",[]],[\"name/1247\",[211,32.542]],[\"comment/1247\",[]],[\"name/1248\",[123,52.001]],[\"comment/1248\",[]],[\"name/1249\",[390,69.347]],[\"comment/1249\",[]],[\"name/1250\",[4,15.275]],[\"comment/1250\",[]],[\"name/1251\",[211,32.542]],[\"comment/1251\",[]],[\"name/1252\",[123,52.001]],[\"comment/1252\",[]],[\"name/1253\",[391,69.347]],[\"comment/1253\",[]],[\"name/1254\",[4,15.275]],[\"comment/1254\",[]],[\"name/1255\",[211,32.542]],[\"comment/1255\",[]],[\"name/1256\",[38,58.361]],[\"comment/1256\",[]],[\"name/1257\",[4,15.275]],[\"comment/1257\",[]],[\"name/1258\",[211,32.542]],[\"comment/1258\",[]],[\"name/1259\",[379,56.354]],[\"comment/1259\",[]],[\"name/1260\",[4,15.275]],[\"comment/1260\",[]],[\"name/1261\",[211,32.542]],[\"comment/1261\",[]],[\"name/1262\",[380,56.354]],[\"comment/1262\",[]],[\"name/1263\",[381,56.354]],[\"comment/1263\",[]],[\"name/1264\",[382,56.354]],[\"comment/1264\",[]],[\"name/1265\",[392,69.347]],[\"comment/1265\",[]],[\"name/1266\",[4,15.275]],[\"comment/1266\",[]],[\"name/1267\",[211,32.542]],[\"comment/1267\",[]],[\"name/1268\",[374,60.874]],[\"comment/1268\",[]],[\"name/1269\",[4,15.275]],[\"comment/1269\",[]],[\"name/1270\",[211,32.542]],[\"comment/1270\",[]],[\"name/1271\",[379,56.354]],[\"comment/1271\",[]],[\"name/1272\",[4,15.275]],[\"comment/1272\",[]],[\"name/1273\",[211,32.542]],[\"comment/1273\",[]],[\"name/1274\",[380,56.354]],[\"comment/1274\",[]],[\"name/1275\",[381,56.354]],[\"comment/1275\",[]],[\"name/1276\",[382,56.354]],[\"comment/1276\",[]],[\"name/1277\",[393,69.347]],[\"comment/1277\",[]],[\"name/1278\",[394,69.347]],[\"comment/1278\",[]],[\"name/1279\",[4,15.275]],[\"comment/1279\",[]],[\"name/1280\",[217,45.993]],[\"comment/1280\",[]],[\"name/1281\",[395,69.347]],[\"comment/1281\",[]],[\"name/1282\",[396,69.347]],[\"comment/1282\",[]],[\"name/1283\",[397,69.347]],[\"comment/1283\",[]],[\"name/1284\",[398,69.347]],[\"comment/1284\",[]],[\"name/1285\",[275,47.375]],[\"comment/1285\",[]],[\"name/1286\",[399,69.347]],[\"comment/1286\",[]],[\"name/1287\",[400,69.347]],[\"comment/1287\",[]],[\"name/1288\",[401,69.347]],[\"comment/1288\",[]],[\"name/1289\",[402,69.347]],[\"comment/1289\",[]],[\"name/1290\",[403,69.347]],[\"comment/1290\",[]],[\"name/1291\",[198,52.001]],[\"comment/1291\",[]],[\"name/1292\",[404,69.347]],[\"comment/1292\",[]],[\"name/1293\",[405,69.347]],[\"comment/1293\",[]],[\"name/1294\",[4,15.275]],[\"comment/1294\",[]],[\"name/1295\",[217,45.993]],[\"comment/1295\",[]],[\"name/1296\",[406,56.354]],[\"comment/1296\",[]],[\"name/1297\",[407,58.361]],[\"comment/1297\",[]],[\"name/1298\",[408,69.347]],[\"comment/1298\",[]],[\"name/1299\",[4,15.275]],[\"comment/1299\",[]],[\"name/1300\",[217,45.993]],[\"comment/1300\",[]],[\"name/1301\",[261,60.874]],[\"comment/1301\",[]],[\"name/1302\",[4,15.275]],[\"comment/1302\",[]],[\"name/1303\",[86,60.874]],[\"comment/1303\",[]],[\"name/1304\",[409,56.354]],[\"comment/1304\",[]],[\"name/1305\",[202,64.239]],[\"comment/1305\",[]],[\"name/1306\",[90,64.239]],[\"comment/1306\",[]],[\"name/1307\",[410,69.347]],[\"comment/1307\",[]],[\"name/1308\",[411,64.239]],[\"comment/1308\",[]],[\"name/1309\",[217,45.993]],[\"comment/1309\",[]],[\"name/1310\",[203,64.239]],[\"comment/1310\",[]],[\"name/1311\",[412,69.347]],[\"comment/1311\",[]],[\"name/1312\",[413,69.347]],[\"comment/1312\",[]],[\"name/1313\",[414,69.347]],[\"comment/1313\",[]],[\"name/1314\",[415,69.347]],[\"comment/1314\",[]],[\"name/1315\",[416,69.347]],[\"comment/1315\",[]],[\"name/1316\",[417,69.347]],[\"comment/1316\",[]],[\"name/1317\",[418,69.347]],[\"comment/1317\",[]],[\"name/1318\",[198,52.001]],[\"comment/1318\",[]],[\"name/1319\",[206,58.361]],[\"comment/1319\",[]],[\"name/1320\",[97,52.001]],[\"comment/1320\",[]],[\"name/1321\",[207,64.239]],[\"comment/1321\",[]],[\"name/1322\",[406,56.354]],[\"comment/1322\",[]],[\"name/1323\",[407,58.361]],[\"comment/1323\",[]],[\"name/1324\",[409,56.354]],[\"comment/1324\",[]],[\"name/1325\",[419,69.347]],[\"comment/1325\",[]],[\"name/1326\",[123,52.001]],[\"comment/1326\",[]],[\"name/1327\",[420,69.347]],[\"comment/1327\",[]],[\"name/1328\",[421,69.347]],[\"comment/1328\",[]],[\"name/1329\",[422,69.347]],[\"comment/1329\",[]],[\"name/1330\",[423,69.347]],[\"comment/1330\",[]],[\"name/1331\",[424,69.347]],[\"comment/1331\",[]],[\"name/1332\",[425,69.347]],[\"comment/1332\",[]],[\"name/1333\",[426,69.347]],[\"comment/1333\",[]],[\"name/1334\",[427,69.347]],[\"comment/1334\",[]],[\"name/1335\",[428,69.347]],[\"comment/1335\",[]],[\"name/1336\",[84,49.888]],[\"comment/1336\",[]],[\"name/1337\",[88,48.145]],[\"comment/1337\",[]],[\"name/1338\",[89,64.239]],[\"comment/1338\",[]],[\"name/1339\",[429,69.347]],[\"comment/1339\",[]],[\"name/1340\",[430,69.347]],[\"comment/1340\",[]],[\"name/1341\",[431,69.347]],[\"comment/1341\",[]],[\"name/1342\",[432,69.347]],[\"comment/1342\",[]],[\"name/1343\",[433,69.347]],[\"comment/1343\",[]],[\"name/1344\",[95,50.889]],[\"comment/1344\",[]],[\"name/1345\",[434,69.347]],[\"comment/1345\",[]],[\"name/1346\",[206,58.361]],[\"comment/1346\",[]],[\"name/1347\",[98,64.239]],[\"comment/1347\",[]],[\"name/1348\",[435,69.347]],[\"comment/1348\",[]],[\"name/1349\",[4,15.275]],[\"comment/1349\",[]],[\"name/1350\",[436,69.347]],[\"comment/1350\",[]],[\"name/1351\",[437,69.347]],[\"comment/1351\",[]],[\"name/1352\",[438,60.874]],[\"comment/1352\",[]],[\"name/1353\",[438,60.874]],[\"comment/1353\",[]],[\"name/1354\",[438,60.874]],[\"comment/1354\",[]],[\"name/1355\",[439,60.874]],[\"comment/1355\",[]],[\"name/1356\",[439,60.874]],[\"comment/1356\",[]],[\"name/1357\",[440,69.347]],[\"comment/1357\",[]],[\"name/1358\",[441,64.239]],[\"comment/1358\",[]],[\"name/1359\",[441,64.239]],[\"comment/1359\",[]],[\"name/1360\",[442,69.347]],[\"comment/1360\",[]],[\"name/1361\",[443,69.347]],[\"comment/1361\",[]],[\"name/1362\",[444,69.347]],[\"comment/1362\",[]],[\"name/1363\",[445,69.347]],[\"comment/1363\",[]],[\"name/1364\",[3,45.993]],[\"comment/1364\",[]],[\"name/1365\",[301,56.354]],[\"comment/1365\",[]],[\"name/1366\",[4,15.275]],[\"comment/1366\",[]],[\"name/1367\",[446,69.347]],[\"comment/1367\",[]],[\"name/1368\",[275,47.375]],[\"comment/1368\",[]],[\"name/1369\",[186,52.001]],[\"comment/1369\",[]],[\"name/1370\",[447,69.347]],[\"comment/1370\",[]],[\"name/1371\",[409,56.354]],[\"comment/1371\",[]],[\"name/1372\",[88,48.145]],[\"comment/1372\",[]],[\"name/1373\",[217,45.993]],[\"comment/1373\",[]],[\"name/1374\",[448,64.239]],[\"comment/1374\",[]],[\"name/1375\",[252,54.684]],[\"comment/1375\",[]],[\"name/1376\",[368,53.253]],[\"comment/1376\",[]],[\"name/1377\",[449,69.347]],[\"comment/1377\",[]],[\"name/1378\",[196,54.684]],[\"comment/1378\",[]],[\"name/1379\",[450,69.347]],[\"comment/1379\",[]],[\"name/1380\",[451,69.347]],[\"comment/1380\",[]],[\"name/1381\",[452,69.347]],[\"comment/1381\",[]],[\"name/1382\",[206,58.361]],[\"comment/1382\",[]],[\"name/1383\",[97,52.001]],[\"comment/1383\",[]],[\"name/1384\",[406,56.354]],[\"comment/1384\",[]],[\"name/1385\",[407,58.361]],[\"comment/1385\",[]],[\"name/1386\",[453,69.347]],[\"comment/1386\",[]],[\"name/1387\",[4,15.275]],[\"comment/1387\",[]],[\"name/1388\",[454,69.347]],[\"comment/1388\",[]],[\"name/1389\",[455,64.239]],[\"comment/1389\",[]],[\"name/1390\",[217,45.993]],[\"comment/1390\",[]],[\"name/1391\",[448,64.239]],[\"comment/1391\",[]],[\"name/1392\",[301,56.354]],[\"comment/1392\",[]],[\"name/1393\",[252,54.684]],[\"comment/1393\",[]],[\"name/1394\",[456,64.239]],[\"comment/1394\",[]],[\"name/1395\",[457,69.347]],[\"comment/1395\",[]],[\"name/1396\",[458,69.347]],[\"comment/1396\",[]],[\"name/1397\",[406,56.354]],[\"comment/1397\",[]],[\"name/1398\",[407,58.361]],[\"comment/1398\",[]],[\"name/1399\",[232,64.239]],[\"comment/1399\",[]],[\"name/1400\",[368,53.253]],[\"comment/1400\",[]],[\"name/1401\",[4,15.275]],[\"comment/1401\",[]],[\"name/1402\",[84,49.888]],[\"comment/1402\",[]],[\"name/1403\",[85,64.239]],[\"comment/1403\",[]],[\"name/1404\",[186,52.001]],[\"comment/1404\",[]],[\"name/1405\",[187,56.354]],[\"comment/1405\",[]],[\"name/1406\",[459,64.239]],[\"comment/1406\",[]],[\"name/1407\",[188,50.889]],[\"comment/1407\",[]],[\"name/1408\",[86,60.874]],[\"comment/1408\",[]],[\"name/1409\",[409,56.354]],[\"comment/1409\",[]],[\"name/1410\",[88,48.145]],[\"comment/1410\",[]],[\"name/1411\",[189,50.889]],[\"comment/1411\",[]],[\"name/1412\",[91,53.253]],[\"comment/1412\",[]],[\"name/1413\",[411,64.239]],[\"comment/1413\",[]],[\"name/1414\",[217,45.993]],[\"comment/1414\",[]],[\"name/1415\",[190,49.888]],[\"comment/1415\",[]],[\"name/1416\",[460,69.347]],[\"comment/1416\",[]],[\"name/1417\",[92,60.874]],[\"comment/1417\",[]],[\"name/1418\",[191,54.684]],[\"comment/1418\",[]],[\"name/1419\",[192,56.354]],[\"comment/1419\",[]],[\"name/1420\",[94,60.874]],[\"comment/1420\",[]],[\"name/1421\",[193,53.253]],[\"comment/1421\",[]],[\"name/1422\",[194,56.354]],[\"comment/1422\",[]],[\"name/1423\",[196,54.684]],[\"comment/1423\",[]],[\"name/1424\",[95,50.889]],[\"comment/1424\",[]],[\"name/1425\",[96,64.239]],[\"comment/1425\",[]],[\"name/1426\",[197,53.253]],[\"comment/1426\",[]],[\"name/1427\",[198,52.001]],[\"comment/1427\",[]],[\"name/1428\",[199,49.888]],[\"comment/1428\",[]],[\"name/1429\",[97,52.001]],[\"comment/1429\",[]],[\"name/1430\",[369,60.874]],[\"comment/1430\",[]],[\"name/1431\",[461,69.347]],[\"comment/1431\",[]],[\"name/1432\",[74,64.239]],[\"comment/1432\",[]],[\"name/1433\",[462,69.347]],[\"comment/1433\",[]],[\"name/1434\",[463,69.347]],[\"comment/1434\",[]],[\"name/1435\",[125,48.145]],[\"comment/1435\",[]],[\"name/1436\",[464,69.347]],[\"comment/1436\",[]],[\"name/1437\",[465,69.347]],[\"comment/1437\",[]],[\"name/1438\",[466,69.347]],[\"comment/1438\",[]],[\"name/1439\",[4,15.275]],[\"comment/1439\",[]],[\"name/1440\",[211,32.542]],[\"comment/1440\",[]],[\"name/1441\",[467,69.347]],[\"comment/1441\",[]],[\"name/1442\",[468,69.347]],[\"comment/1442\",[]],[\"name/1443\",[469,64.239]],[\"comment/1443\",[]],[\"name/1444\",[470,69.347]],[\"comment/1444\",[]],[\"name/1445\",[471,69.347]],[\"comment/1445\",[]],[\"name/1446\",[4,15.275]],[\"comment/1446\",[]],[\"name/1447\",[211,32.542]],[\"comment/1447\",[]],[\"name/1448\",[37,58.361]],[\"comment/1448\",[]],[\"name/1449\",[472,69.347]],[\"comment/1449\",[]],[\"name/1450\",[349,64.239]],[\"comment/1450\",[]],[\"name/1451\",[473,64.239]],[\"comment/1451\",[]],[\"name/1452\",[474,69.347]],[\"comment/1452\",[]],[\"name/1453\",[475,69.347]],[\"comment/1453\",[]],[\"name/1454\",[476,69.347]],[\"comment/1454\",[]],[\"name/1455\",[477,69.347]],[\"comment/1455\",[]],[\"name/1456\",[478,69.347]],[\"comment/1456\",[]],[\"name/1457\",[456,64.239]],[\"comment/1457\",[]],[\"name/1458\",[479,69.347]],[\"comment/1458\",[]],[\"name/1459\",[480,69.347]],[\"comment/1459\",[]],[\"name/1460\",[481,69.347]],[\"comment/1460\",[]],[\"name/1461\",[4,15.275]],[\"comment/1461\",[]],[\"name/1462\",[455,64.239]],[\"comment/1462\",[]],[\"name/1463\",[217,45.993]],[\"comment/1463\",[]],[\"name/1464\",[301,56.354]],[\"comment/1464\",[]],[\"name/1465\",[252,54.684]],[\"comment/1465\",[]],[\"name/1466\",[406,56.354]],[\"comment/1466\",[]],[\"name/1467\",[244,58.361]],[\"comment/1467\",[]],[\"name/1468\",[114,64.239]],[\"comment/1468\",[]],[\"name/1469\",[482,69.347]],[\"comment/1469\",[]],[\"name/1470\",[4,15.275]],[\"comment/1470\",[]],[\"name/1471\",[211,32.542]],[\"comment/1471\",[]],[\"name/1472\",[483,69.347]],[\"comment/1472\",[]],[\"name/1473\",[484,69.347]],[\"comment/1473\",[]],[\"name/1474\",[485,69.347]],[\"comment/1474\",[]],[\"name/1475\",[486,69.347]],[\"comment/1475\",[]],[\"name/1476\",[487,69.347]],[\"comment/1476\",[]],[\"name/1477\",[469,64.239]],[\"comment/1477\",[]],[\"name/1478\",[488,69.347]],[\"comment/1478\",[]],[\"name/1479\",[489,69.347]],[\"comment/1479\",[]],[\"name/1480\",[490,69.347]],[\"comment/1480\",[]],[\"name/1481\",[491,64.239]],[\"comment/1481\",[]],[\"name/1482\",[492,69.347]],[\"comment/1482\",[]],[\"name/1483\",[493,69.347]],[\"comment/1483\",[]],[\"name/1484\",[494,69.347]],[\"comment/1484\",[]],[\"name/1485\",[495,69.347]],[\"comment/1485\",[]],[\"name/1486\",[496,69.347]],[\"comment/1486\",[]],[\"name/1487\",[497,69.347]],[\"comment/1487\",[]],[\"name/1488\",[498,69.347]],[\"comment/1488\",[]],[\"name/1489\",[499,69.347]],[\"comment/1489\",[]],[\"name/1490\",[500,69.347]],[\"comment/1490\",[]],[\"name/1491\",[501,69.347]],[\"comment/1491\",[]],[\"name/1492\",[502,69.347]],[\"comment/1492\",[]],[\"name/1493\",[503,69.347]],[\"comment/1493\",[]],[\"name/1494\",[504,69.347]],[\"comment/1494\",[]],[\"name/1495\",[505,69.347]],[\"comment/1495\",[]],[\"name/1496\",[506,69.347]],[\"comment/1496\",[]],[\"name/1497\",[507,69.347]],[\"comment/1497\",[]],[\"name/1498\",[508,69.347]],[\"comment/1498\",[]],[\"name/1499\",[509,69.347]],[\"comment/1499\",[]],[\"name/1500\",[510,69.347]],[\"comment/1500\",[]],[\"name/1501\",[137,64.239]],[\"comment/1501\",[]],[\"name/1502\",[511,69.347]],[\"comment/1502\",[]],[\"name/1503\",[512,69.347]],[\"comment/1503\",[]],[\"name/1504\",[4,15.275]],[\"comment/1504\",[]],[\"name/1505\",[211,32.542]],[\"comment/1505\",[]],[\"name/1506\",[201,64.239]],[\"comment/1506\",[]],[\"name/1507\",[409,56.354]],[\"comment/1507\",[]],[\"name/1508\",[439,60.874]],[\"comment/1508\",[]],[\"name/1509\",[513,69.347]],[\"comment/1509\",[]],[\"name/1510\",[514,69.347]],[\"comment/1510\",[]],[\"name/1511\",[4,15.275]],[\"comment/1511\",[]],[\"name/1512\",[211,32.542]],[\"comment/1512\",[]],[\"name/1513\",[515,69.347]],[\"comment/1513\",[]],[\"name/1514\",[459,64.239]],[\"comment/1514\",[]],[\"name/1515\",[516,69.347]],[\"comment/1515\",[]],[\"name/1516\",[517,69.347]],[\"comment/1516\",[]],[\"name/1517\",[4,15.275]],[\"comment/1517\",[]],[\"name/1518\",[211,32.542]],[\"comment/1518\",[]],[\"name/1519\",[518,69.347]],[\"comment/1519\",[]],[\"name/1520\",[519,69.347]],[\"comment/1520\",[]],[\"name/1521\",[520,69.347]],[\"comment/1521\",[]],[\"name/1522\",[521,69.347]],[\"comment/1522\",[]],[\"name/1523\",[522,69.347]],[\"comment/1523\",[]],[\"name/1524\",[523,69.347]],[\"comment/1524\",[]],[\"name/1525\",[524,69.347]],[\"comment/1525\",[]],[\"name/1526\",[491,64.239]],[\"comment/1526\",[]],[\"name/1527\",[525,69.347]],[\"comment/1527\",[]],[\"name/1528\",[526,69.347]],[\"comment/1528\",[]],[\"name/1529\",[527,69.347]],[\"comment/1529\",[]],[\"name/1530\",[528,69.347]],[\"comment/1530\",[]],[\"name/1531\",[529,69.347]],[\"comment/1531\",[]],[\"name/1532\",[530,69.347]],[\"comment/1532\",[]],[\"name/1533\",[531,69.347]],[\"comment/1533\",[]],[\"name/1534\",[532,69.347]],[\"comment/1534\",[]],[\"name/1535\",[533,69.347]],[\"comment/1535\",[]],[\"name/1536\",[4,15.275]],[\"comment/1536\",[]],[\"name/1537\",[211,32.542]],[\"comment/1537\",[]],[\"name/1538\",[125,48.145]],[\"comment/1538\",[]],[\"name/1539\",[473,64.239]],[\"comment/1539\",[]]],\"invertedIndex\":[[\"__type\",{\"_index\":4,\"name\":{\"4\":{},\"7\":{},\"10\":{},\"122\":{},\"127\":{},\"147\":{},\"159\":{},\"164\":{},\"166\":{},\"191\":{},\"218\":{},\"220\":{},\"222\":{},\"224\":{},\"226\":{},\"228\":{},\"230\":{},\"232\":{},\"234\":{},\"236\":{},\"238\":{},\"240\":{},\"242\":{},\"244\":{},\"246\":{},\"248\":{},\"250\":{},\"252\":{},\"263\":{},\"267\":{},\"288\":{},\"302\":{},\"306\":{},\"311\":{},\"314\":{},\"318\":{},\"321\":{},\"325\":{},\"329\":{},\"341\":{},\"344\":{},\"348\":{},\"351\":{},\"359\":{},\"365\":{},\"373\":{},\"375\":{},\"377\":{},\"383\":{},\"401\":{},\"404\":{},\"422\":{},\"443\":{},\"458\":{},\"477\":{},\"483\":{},\"487\":{},\"496\":{},\"525\":{},\"527\":{},\"530\":{},\"532\":{},\"534\":{},\"536\":{},\"538\":{},\"540\":{},\"542\":{},\"544\":{},\"546\":{},\"548\":{},\"550\":{},\"552\":{},\"554\":{},\"556\":{},\"558\":{},\"560\":{},\"562\":{},\"564\":{},\"566\":{},\"568\":{},\"570\":{},\"572\":{},\"574\":{},\"576\":{},\"578\":{},\"580\":{},\"605\":{},\"612\":{},\"614\":{},\"617\":{},\"619\":{},\"621\":{},\"623\":{},\"625\":{},\"627\":{},\"629\":{},\"631\":{},\"633\":{},\"635\":{},\"637\":{},\"639\":{},\"641\":{},\"643\":{},\"645\":{},\"647\":{},\"649\":{},\"651\":{},\"653\":{},\"655\":{},\"657\":{},\"659\":{},\"661\":{},\"663\":{},\"665\":{},\"667\":{},\"669\":{},\"671\":{},\"673\":{},\"675\":{},\"677\":{},\"679\":{},\"704\":{},\"711\":{},\"713\":{},\"716\":{},\"718\":{},\"720\":{},\"722\":{},\"724\":{},\"726\":{},\"728\":{},\"730\":{},\"732\":{},\"734\":{},\"736\":{},\"738\":{},\"740\":{},\"742\":{},\"744\":{},\"746\":{},\"748\":{},\"750\":{},\"752\":{},\"754\":{},\"756\":{},\"758\":{},\"760\":{},\"762\":{},\"764\":{},\"766\":{},\"768\":{},\"770\":{},\"772\":{},\"784\":{},\"786\":{},\"789\":{},\"791\":{},\"793\":{},\"795\":{},\"797\":{},\"799\":{},\"801\":{},\"803\":{},\"805\":{},\"807\":{},\"818\":{},\"820\":{},\"823\":{},\"825\":{},\"827\":{},\"829\":{},\"831\":{},\"833\":{},\"835\":{},\"837\":{},\"839\":{},\"841\":{},\"843\":{},\"854\":{},\"856\":{},\"859\":{},\"861\":{},\"863\":{},\"865\":{},\"867\":{},\"869\":{},\"871\":{},\"873\":{},\"875\":{},\"877\":{},\"879\":{},\"881\":{},\"883\":{},\"894\":{},\"896\":{},\"899\":{},\"901\":{},\"903\":{},\"905\":{},\"907\":{},\"909\":{},\"911\":{},\"913\":{},\"915\":{},\"917\":{},\"919\":{},\"921\":{},\"923\":{},\"925\":{},\"927\":{},\"929\":{},\"931\":{},\"933\":{},\"935\":{},\"937\":{},\"948\":{},\"950\":{},\"953\":{},\"955\":{},\"957\":{},\"959\":{},\"961\":{},\"963\":{},\"965\":{},\"967\":{},\"969\":{},\"971\":{},\"973\":{},\"975\":{},\"977\":{},\"979\":{},\"981\":{},\"983\":{},\"985\":{},\"987\":{},\"989\":{},\"991\":{},\"993\":{},\"995\":{},\"997\":{},\"999\":{},\"1001\":{},\"1003\":{},\"1007\":{},\"1017\":{},\"1019\":{},\"1022\":{},\"1024\":{},\"1026\":{},\"1028\":{},\"1030\":{},\"1032\":{},\"1034\":{},\"1036\":{},\"1038\":{},\"1040\":{},\"1042\":{},\"1044\":{},\"1046\":{},\"1048\":{},\"1050\":{},\"1052\":{},\"1059\":{},\"1061\":{},\"1065\":{},\"1075\":{},\"1077\":{},\"1080\":{},\"1082\":{},\"1084\":{},\"1086\":{},\"1088\":{},\"1090\":{},\"1092\":{},\"1094\":{},\"1096\":{},\"1098\":{},\"1101\":{},\"1105\":{},\"1108\":{},\"1117\":{},\"1120\":{},\"1124\":{},\"1127\":{},\"1132\":{},\"1135\":{},\"1139\":{},\"1142\":{},\"1151\":{},\"1156\":{},\"1159\":{},\"1164\":{},\"1169\":{},\"1173\":{},\"1176\":{},\"1184\":{},\"1189\":{},\"1192\":{},\"1197\":{},\"1200\":{},\"1203\":{},\"1209\":{},\"1213\":{},\"1217\":{},\"1221\":{},\"1224\":{},\"1227\":{},\"1233\":{},\"1236\":{},\"1240\":{},\"1246\":{},\"1250\":{},\"1254\":{},\"1257\":{},\"1260\":{},\"1266\":{},\"1269\":{},\"1272\":{},\"1279\":{},\"1294\":{},\"1299\":{},\"1302\":{},\"1349\":{},\"1366\":{},\"1387\":{},\"1401\":{},\"1439\":{},\"1446\":{},\"1461\":{},\"1470\":{},\"1504\":{},\"1511\":{},\"1517\":{},\"1536\":{}},\"comment\":{}}],[\"__typename\",{\"_index\":211,\"name\":{\"303\":{},\"307\":{},\"312\":{},\"315\":{},\"319\":{},\"322\":{},\"326\":{},\"330\":{},\"342\":{},\"345\":{},\"349\":{},\"352\":{},\"1106\":{},\"1109\":{},\"1118\":{},\"1121\":{},\"1125\":{},\"1128\":{},\"1133\":{},\"1136\":{},\"1140\":{},\"1143\":{},\"1152\":{},\"1157\":{},\"1160\":{},\"1165\":{},\"1170\":{},\"1174\":{},\"1177\":{},\"1185\":{},\"1190\":{},\"1193\":{},\"1198\":{},\"1201\":{},\"1204\":{},\"1210\":{},\"1214\":{},\"1218\":{},\"1222\":{},\"1225\":{},\"1228\":{},\"1234\":{},\"1237\":{},\"1241\":{},\"1247\":{},\"1251\":{},\"1255\":{},\"1258\":{},\"1261\":{},\"1267\":{},\"1270\":{},\"1273\":{},\"1440\":{},\"1447\":{},\"1471\":{},\"1505\":{},\"1512\":{},\"1518\":{},\"1537\":{}},\"comment\":{}}],[\"_createuservault\",{\"_index\":61,\"name\":{\"63\":{}},\"comment\":{}}],[\"abi\",{\"_index\":274,\"name\":{\"522\":{},\"609\":{},\"708\":{},\"781\":{},\"815\":{},\"851\":{},\"891\":{},\"945\":{},\"1014\":{},\"1056\":{},\"1072\":{}},\"comment\":{}}],[\"acceptedloans\",{\"_index\":515,\"name\":{\"1513\":{}},\"comment\":{}}],[\"account\",{\"_index\":5,\"name\":{\"5\":{}},\"comment\":{}}],[\"active\",{\"_index\":77,\"name\":{\"79\":{}},\"comment\":{}}],[\"activities\",{\"_index\":446,\"name\":{\"1367\":{}},\"comment\":{}}],[\"activity\",{\"_index\":405,\"name\":{\"1293\":{}},\"comment\":{}}],[\"activitytype\",{\"_index\":454,\"name\":{\"1388\":{}},\"comment\":{}}],[\"addloancontract\",{\"_index\":316,\"name\":{\"792\":{},\"826\":{},\"862\":{}},\"comment\":{}}],[\"addnewtranche\",{\"_index\":312,\"name\":{\"767\":{}},\"comment\":{}}],[\"addorupdatelisting\",{\"_index\":228,\"name\":{\"343\":{}},\"comment\":{}}],[\"address\",{\"_index\":275,\"name\":{\"523\":{},\"610\":{},\"709\":{},\"782\":{},\"816\":{},\"852\":{},\"892\":{},\"946\":{},\"1015\":{},\"1057\":{},\"1073\":{},\"1285\":{},\"1368\":{}},\"comment\":{}}],[\"addtranche\",{\"_index\":44,\"name\":{\"46\":{},\"514\":{},\"598\":{},\"697\":{}},\"comment\":{}}],[\"addwhitelistedcallbackcontract\",{\"_index\":280,\"name\":{\"537\":{},\"624\":{},\"723\":{}},\"comment\":{}}],[\"afternfttransfer\",{\"_index\":352,\"name\":{\"1031\":{}},\"comment\":{}}],[\"afterprincipaltransfer\",{\"_index\":353,\"name\":{\"1033\":{}},\"comment\":{}}],[\"all\",{\"_index\":158,\"name\":{\"179\":{}},\"comment\":{}}],[\"allv4\",{\"_index\":314,\"name\":{\"774\":{}},\"comment\":{}}],[\"allv5\",{\"_index\":319,\"name\":{\"809\":{}},\"comment\":{}}],[\"allv6\",{\"_index\":321,\"name\":{\"845\":{}},\"comment\":{}}],[\"amount\",{\"_index\":201,\"name\":{\"289\":{},\"1506\":{}},\"comment\":{}}],[\"amounts\",{\"_index\":238,\"name\":{\"363\":{}},\"comment\":{}}],[\"api\",{\"_index\":7,\"name\":{\"8\":{},\"188\":{},\"190\":{}},\"comment\":{}}],[\"apiclient\",{\"_index\":144,\"name\":{\"160\":{},\"1102\":{}},\"comment\":{}}],[\"approve\",{\"_index\":328,\"name\":{\"904\":{},\"958\":{},\"1081\":{}},\"comment\":{}}],[\"approvenftforall\",{\"_index\":57,\"name\":{\"59\":{}},\"comment\":{}}],[\"approvesigner\",{\"_index\":281,\"name\":{\"539\":{}},\"comment\":{}}],[\"approvetoken\",{\"_index\":59,\"name\":{\"61\":{}},\"comment\":{}}],[\"aprbps\",{\"_index\":84,\"name\":{\"86\":{},\"268\":{},\"384\":{},\"405\":{},\"423\":{},\"444\":{},\"459\":{},\"488\":{},\"1336\":{},\"1402\":{}},\"comment\":{}}],[\"arguments\",{\"_index\":183,\"name\":{\"264\":{}},\"comment\":{}}],[\"asc\",{\"_index\":100,\"name\":{\"102\":{}},\"comment\":{}}],[\"asset\",{\"_index\":464,\"name\":{\"1436\":{}},\"comment\":{}}],[\"auction\",{\"_index\":232,\"name\":{\"355\":{},\"1399\":{}},\"comment\":{}}],[\"auctionloanliquidatorabi\",{\"_index\":439,\"name\":{\"1355\":{},\"1356\":{},\"1508\":{}},\"comment\":{}}],[\"auctionloanliquidatorv4\",{\"_index\":150,\"name\":{\"170\":{}},\"comment\":{}}],[\"auctionloanliquidatorv5\",{\"_index\":151,\"name\":{\"171\":{}},\"comment\":{}}],[\"auctionloanliquidatorv6\",{\"_index\":152,\"name\":{\"172\":{}},\"comment\":{}}],[\"auctionv5\",{\"_index\":425,\"name\":{\"1332\":{}},\"comment\":{}}],[\"auctionv6\",{\"_index\":426,\"name\":{\"1333\":{}},\"comment\":{}}],[\"auctionwithbuyoutloanliquidatorabi\",{\"_index\":440,\"name\":{\"1357\":{}},\"comment\":{}}],[\"availableprincipalamount\",{\"_index\":85,\"name\":{\"87\":{},\"1403\":{}},\"comment\":{}}],[\"balanceof\",{\"_index\":55,\"name\":{\"57\":{}},\"comment\":{}}],[\"basecontract\",{\"_index\":360,\"name\":{\"1054\":{}},\"comment\":{}}],[\"bcclient\",{\"_index\":6,\"name\":{\"6\":{},\"524\":{},\"611\":{},\"710\":{},\"783\":{},\"817\":{},\"853\":{},\"893\":{},\"947\":{},\"1016\":{},\"1058\":{},\"1074\":{}},\"comment\":{}}],[\"bestoffer\",{\"_index\":483,\"name\":{\"1472\":{}},\"comment\":{}}],[\"bid\",{\"_index\":479,\"name\":{\"1458\":{}},\"comment\":{}}],[\"bigint\",{\"_index\":399,\"name\":{\"1286\":{}},\"comment\":{}}],[\"boolean\",{\"_index\":396,\"name\":{\"1282\":{}},\"comment\":{}}],[\"borrower\",{\"_index\":127,\"name\":{\"132\":{}},\"comment\":{}}],[\"borroweraddress\",{\"_index\":186,\"name\":{\"269\":{},\"385\":{},\"406\":{},\"424\":{},\"1114\":{},\"1148\":{},\"1369\":{},\"1404\":{}},\"comment\":{}}],[\"borrowers\",{\"_index\":130,\"name\":{\"138\":{}},\"comment\":{}}],[\"borrowersignature\",{\"_index\":302,\"name\":{\"608\":{},\"707\":{}},\"comment\":{}}],[\"burn\",{\"_index\":333,\"name\":{\"914\":{},\"968\":{}},\"comment\":{}}],[\"burnandwithdraw\",{\"_index\":324,\"name\":{\"887\":{},\"916\":{},\"941\":{},\"970\":{}},\"comment\":{}}],[\"burnandwithdrawargs\",{\"_index\":239,\"name\":{\"364\":{}},\"comment\":{}}],[\"burnuservaultandwithdraw\",{\"_index\":64,\"name\":{\"66\":{}},\"comment\":{}}],[\"buy\",{\"_index\":354,\"name\":{\"1035\":{}},\"comment\":{}}],[\"buywithsellandrepay\",{\"_index\":67,\"name\":{\"69\":{}},\"comment\":{}}],[\"cancelalloffers\",{\"_index\":16,\"name\":{\"18\":{},\"504\":{},\"541\":{},\"587\":{},\"626\":{},\"686\":{},\"725\":{}},\"comment\":{}}],[\"cancelallrenegotiationoffers\",{\"_index\":282,\"name\":{\"543\":{},\"628\":{}},\"comment\":{}}],[\"cancelallrenegotiations\",{\"_index\":25,\"name\":{\"27\":{},\"506\":{},\"589\":{},\"688\":{}},\"comment\":{}}],[\"cancelled\",{\"_index\":78,\"name\":{\"80\":{}},\"comment\":{}}],[\"canceloffer\",{\"_index\":15,\"name\":{\"17\":{},\"503\":{},\"545\":{},\"586\":{},\"630\":{},\"685\":{},\"727\":{}},\"comment\":{}}],[\"canceloffers\",{\"_index\":283,\"name\":{\"547\":{},\"632\":{}},\"comment\":{}}],[\"cancelorder\",{\"_index\":14,\"name\":{\"16\":{}},\"comment\":{}}],[\"cancelrefinanceoffer\",{\"_index\":20,\"name\":{\"22\":{},\"505\":{},\"588\":{},\"687\":{}},\"comment\":{}}],[\"cancelrenegotiationoffer\",{\"_index\":284,\"name\":{\"549\":{},\"634\":{},\"729\":{}},\"comment\":{}}],[\"cancelrenegotiationoffers\",{\"_index\":285,\"name\":{\"551\":{},\"636\":{}},\"comment\":{}}],[\"capacity\",{\"_index\":187,\"name\":{\"270\":{},\"386\":{},\"407\":{},\"425\":{},\"1405\":{}},\"comment\":{}}],[\"collection\",{\"_index\":125,\"name\":{\"130\":{},\"361\":{},\"374\":{},\"1116\":{},\"1131\":{},\"1154\":{},\"1167\":{},\"1187\":{},\"1211\":{},\"1219\":{},\"1435\":{},\"1538\":{}},\"comment\":{}}],[\"collectionbycontractaddress\",{\"_index\":171,\"name\":{\"208\":{},\"233\":{}},\"comment\":{}}],[\"collectionbycontractaddressquery\",{\"_index\":383,\"name\":{\"1208\":{}},\"comment\":{}}],[\"collectionid\",{\"_index\":37,\"name\":{\"39\":{},\"408\":{},\"426\":{},\"1448\":{}},\"comment\":{}}],[\"collectionidbyslug\",{\"_index\":173,\"name\":{\"210\":{},\"229\":{}},\"comment\":{}}],[\"collectionidbyslugquery\",{\"_index\":385,\"name\":{\"1216\":{}},\"comment\":{}}],[\"collectionoffer\",{\"_index\":114,\"name\":{\"117\":{},\"1468\":{}},\"comment\":{}}],[\"collectionofferinput\",{\"_index\":112,\"name\":{\"115\":{},\"403\":{}},\"comment\":{}}],[\"collectionofferstatistics\",{\"_index\":514,\"name\":{\"1510\":{}},\"comment\":{}}],[\"collections\",{\"_index\":36,\"name\":{\"38\":{},\"139\":{},\"148\":{},\"207\":{},\"227\":{},\"367\":{},\"1199\":{},\"1215\":{}},\"comment\":{}}],[\"collectionsidbycontractaddress\",{\"_index\":172,\"name\":{\"209\":{},\"231\":{}},\"comment\":{}}],[\"collectionsidbycontractaddressquery\",{\"_index\":384,\"name\":{\"1212\":{}},\"comment\":{}}],[\"collectionsignedofferinput\",{\"_index\":248,\"name\":{\"421\":{}},\"comment\":{}}],[\"collectionsquery\",{\"_index\":378,\"name\":{\"1196\":{}},\"comment\":{}}],[\"collectionstatistics\",{\"_index\":482,\"name\":{\"1469\":{}},\"comment\":{}}],[\"components\",{\"_index\":350,\"name\":{\"1010\":{}},\"comment\":{}}],[\"constructor\",{\"_index\":1,\"name\":{\"1\":{},\"162\":{},\"189\":{},\"500\":{},\"583\":{},\"682\":{},\"776\":{},\"810\":{},\"846\":{},\"886\":{},\"940\":{},\"1011\":{},\"1055\":{},\"1069\":{}},\"comment\":{}}],[\"consumedcapacity\",{\"_index\":459,\"name\":{\"1406\":{},\"1514\":{}},\"comment\":{}}],[\"contract\",{\"_index\":276,\"name\":{\"528\":{},\"615\":{},\"714\":{},\"787\":{},\"821\":{},\"857\":{},\"897\":{},\"951\":{},\"1020\":{},\"1062\":{},\"1078\":{}},\"comment\":{}}],[\"contractaddress\",{\"_index\":188,\"name\":{\"271\":{},\"290\":{},\"378\":{},\"387\":{},\"409\":{},\"427\":{},\"1122\":{},\"1137\":{},\"1407\":{}},\"comment\":{}}],[\"contractdata\",{\"_index\":244,\"name\":{\"376\":{},\"1119\":{},\"1134\":{},\"1467\":{}},\"comment\":{}}],[\"contracts\",{\"_index\":2,\"name\":{\"2\":{},\"161\":{}},\"comment\":{}}],[\"contractstarttime\",{\"_index\":447,\"name\":{\"1370\":{}},\"comment\":{}}],[\"createddate\",{\"_index\":86,\"name\":{\"88\":{},\"1303\":{},\"1408\":{}},\"comment\":{}}],[\"createuservault\",{\"_index\":60,\"name\":{\"62\":{}},\"comment\":{}}],[\"createvault\",{\"_index\":325,\"name\":{\"888\":{},\"942\":{}},\"comment\":{}}],[\"createvaultargs\",{\"_index\":233,\"name\":{\"356\":{}},\"comment\":{}}],[\"currency\",{\"_index\":409,\"name\":{\"1304\":{},\"1324\":{},\"1371\":{},\"1409\":{},\"1507\":{}},\"comment\":{}}],[\"currencyaddress\",{\"_index\":202,\"name\":{\"291\":{},\"1305\":{}},\"comment\":{}}],[\"currencyamount\",{\"_index\":512,\"name\":{\"1503\":{}},\"comment\":{}}],[\"cursor\",{\"_index\":120,\"name\":{\"124\":{},\"137\":{},\"152\":{}},\"comment\":{}}],[\"dailyinterest\",{\"_index\":87,\"name\":{\"89\":{}},\"comment\":{}}],[\"data\",{\"_index\":300,\"name\":{\"606\":{},\"705\":{}},\"comment\":{}}],[\"datetime\",{\"_index\":400,\"name\":{\"1287\":{}},\"comment\":{}}],[\"decoderepaymentcalldata\",{\"_index\":273,\"name\":{\"521\":{},\"604\":{},\"703\":{}},\"comment\":{}}],[\"defaultedprincipal\",{\"_index\":518,\"name\":{\"1519\":{}},\"comment\":{}}],[\"defaults\",{\"_index\":8,\"name\":{\"9\":{}},\"comment\":{}}],[\"delegate\",{\"_index\":46,\"name\":{\"48\":{},\"517\":{},\"601\":{},\"664\":{},\"700\":{},\"753\":{}},\"comment\":{}}],[\"delegatemulticall\",{\"_index\":45,\"name\":{\"47\":{},\"516\":{},\"600\":{},\"699\":{}},\"comment\":{}}],[\"depositerc1155\",{\"_index\":342,\"name\":{\"990\":{}},\"comment\":{}}],[\"depositerc1155s\",{\"_index\":327,\"name\":{\"890\":{},\"944\":{},\"992\":{}},\"comment\":{}}],[\"depositerc1155sargs\",{\"_index\":235,\"name\":{\"358\":{}},\"comment\":{}}],[\"depositerc20\",{\"_index\":334,\"name\":{\"918\":{},\"972\":{}},\"comment\":{}}],[\"depositerc721\",{\"_index\":335,\"name\":{\"920\":{},\"974\":{}},\"comment\":{}}],[\"depositerc721s\",{\"_index\":326,\"name\":{\"889\":{},\"922\":{},\"943\":{},\"976\":{}},\"comment\":{}}],[\"depositerc721sargs\",{\"_index\":234,\"name\":{\"357\":{}},\"comment\":{}}],[\"depositeth\",{\"_index\":336,\"name\":{\"924\":{},\"978\":{}},\"comment\":{}}],[\"deposituservaulterc1155s\",{\"_index\":63,\"name\":{\"65\":{}},\"comment\":{}}],[\"deposituservaulterc721s\",{\"_index\":62,\"name\":{\"64\":{}},\"comment\":{}}],[\"desc\",{\"_index\":101,\"name\":{\"103\":{}},\"comment\":{}}],[\"duration\",{\"_index\":88,\"name\":{\"90\":{},\"272\":{},\"336\":{},\"388\":{},\"410\":{},\"428\":{},\"445\":{},\"460\":{},\"489\":{},\"1337\":{},\"1372\":{},\"1410\":{}},\"comment\":{}}],[\"durationofinterest\",{\"_index\":259,\"name\":{\"478\":{}},\"comment\":{}}],[\"edges\",{\"_index\":382,\"name\":{\"1207\":{},\"1231\":{},\"1244\":{},\"1264\":{},\"1276\":{}},\"comment\":{}}],[\"effectiveaprbps\",{\"_index\":89,\"name\":{\"91\":{},\"1338\":{}},\"comment\":{}}],[\"emitloan\",{\"_index\":27,\"name\":{\"29\":{},\"507\":{},\"567\":{},\"590\":{},\"652\":{},\"689\":{},\"743\":{}},\"comment\":{}}],[\"emitloanargs\",{\"_index\":223,\"name\":{\"333\":{}},\"comment\":{}}],[\"endcursor\",{\"_index\":380,\"name\":{\"1205\":{},\"1229\":{},\"1242\":{},\"1262\":{},\"1274\":{}},\"comment\":{}}],[\"enddate\",{\"_index\":429,\"name\":{\"1339\":{}},\"comment\":{}}],[\"erc1155\",{\"_index\":106,\"name\":{\"109\":{},\"185\":{}},\"comment\":{}}],[\"erc1155abi\",{\"_index\":444,\"name\":{\"1362\":{}},\"comment\":{}}],[\"erc1155collections\",{\"_index\":241,\"name\":{\"370\":{}},\"comment\":{}}],[\"erc1155tokenids\",{\"_index\":242,\"name\":{\"371\":{}},\"comment\":{}}],[\"erc20\",{\"_index\":161,\"name\":{\"187\":{}},\"comment\":{}}],[\"erc721\",{\"_index\":105,\"name\":{\"108\":{},\"183\":{}},\"comment\":{}}],[\"erc721abi\",{\"_index\":443,\"name\":{\"1361\":{}},\"comment\":{}}],[\"erc721or1155abi\",{\"_index\":361,\"name\":{\"1067\":{}},\"comment\":{}}],[\"eventtype\",{\"_index\":455,\"name\":{\"1389\":{},\"1462\":{}},\"comment\":{}}],[\"exact\",{\"_index\":231,\"name\":{\"354\":{}},\"comment\":{}}],[\"executed\",{\"_index\":79,\"name\":{\"81\":{}},\"comment\":{}}],[\"executeflashaction\",{\"_index\":304,\"name\":{\"668\":{},\"757\":{}},\"comment\":{}}],[\"executesell\",{\"_index\":351,\"name\":{\"1013\":{},\"1045\":{}},\"comment\":{}}],[\"execution_info\",{\"_index\":347,\"name\":{\"1006\":{}},\"comment\":{}}],[\"expectedinterest\",{\"_index\":430,\"name\":{\"1340\":{}},\"comment\":{}}],[\"expiration\",{\"_index\":90,\"name\":{\"92\":{},\"1306\":{}},\"comment\":{}}],[\"expirationdate\",{\"_index\":431,\"name\":{\"1341\":{}},\"comment\":{}}],[\"expirationtime\",{\"_index\":189,\"name\":{\"273\":{},\"292\":{},\"338\":{},\"389\":{},\"411\":{},\"429\":{},\"446\":{},\"461\":{},\"1411\":{}},\"comment\":{}}],[\"expired\",{\"_index\":80,\"name\":{\"82\":{}},\"comment\":{}}],[\"extendloan\",{\"_index\":305,\"name\":{\"670\":{}},\"comment\":{}}],[\"fee\",{\"_index\":91,\"name\":{\"93\":{},\"274\":{},\"390\":{},\"412\":{},\"430\":{},\"490\":{},\"1412\":{}},\"comment\":{}}],[\"feeamount\",{\"_index\":250,\"name\":{\"447\":{},\"462\":{}},\"comment\":{}}],[\"fees\",{\"_index\":410,\"name\":{\"1307\":{}},\"comment\":{}}],[\"field\",{\"_index\":260,\"name\":{\"479\":{},\"484\":{}},\"comment\":{}}],[\"filterby\",{\"_index\":122,\"name\":{\"126\":{}},\"comment\":{}}],[\"finalupdatemultisourceloanaddress\",{\"_index\":355,\"name\":{\"1037\":{}},\"comment\":{}}],[\"float\",{\"_index\":398,\"name\":{\"1284\":{}},\"comment\":{}}],[\"floorprice\",{\"_index\":484,\"name\":{\"1473\":{}},\"comment\":{}}],[\"floorprice30d\",{\"_index\":486,\"name\":{\"1475\":{}},\"comment\":{}}],[\"floorprice7d\",{\"_index\":485,\"name\":{\"1474\":{}},\"comment\":{}}],[\"fulfilled\",{\"_index\":140,\"name\":{\"154\":{}},\"comment\":{}}],[\"generatecollectionofferhash\",{\"_index\":164,\"name\":{\"194\":{},\"219\":{}},\"comment\":{}}],[\"generatecollectionofferhashmutation\",{\"_index\":367,\"name\":{\"1104\":{}},\"comment\":{}}],[\"generaterenegotiationofferhash\",{\"_index\":169,\"name\":{\"203\":{},\"221\":{}},\"comment\":{}}],[\"generaterenegotiationofferhashmutation\",{\"_index\":375,\"name\":{\"1172\":{}},\"comment\":{}}],[\"generatesinglenftofferhash\",{\"_index\":166,\"name\":{\"197\":{},\"217\":{}},\"comment\":{}}],[\"generatesinglenftofferhashmutation\",{\"_index\":371,\"name\":{\"1138\":{}},\"comment\":{}}],[\"genericcontract\",{\"_index\":157,\"name\":{\"177\":{}},\"comment\":{}}],[\"getauctionremaininglockupseconds\",{\"_index\":53,\"name\":{\"55\":{}},\"comment\":{}}],[\"getowner\",{\"_index\":54,\"name\":{\"56\":{}},\"comment\":{}}],[\"getremaininglockupseconds\",{\"_index\":39,\"name\":{\"41\":{},\"509\":{},\"593\":{},\"692\":{},\"778\":{},\"812\":{},\"848\":{}},\"comment\":{}}],[\"getwrapperaddress\",{\"_index\":180,\"name\":{\"260\":{}},\"comment\":{}}],[\"gondi\",{\"_index\":0,\"name\":{\"0\":{},\"105\":{}},\"comment\":{}}],[\"gondiprops\",{\"_index\":143,\"name\":{\"157\":{}},\"comment\":{}}],[\"hash\",{\"_index\":401,\"name\":{\"1288\":{}},\"comment\":{}}],[\"hasnextpage\",{\"_index\":381,\"name\":{\"1206\":{},\"1230\":{},\"1243\":{},\"1263\":{},\"1275\":{}},\"comment\":{}}],[\"hex\",{\"_index\":402,\"name\":{\"1289\":{}},\"comment\":{}}],[\"hexstring\",{\"_index\":427,\"name\":{\"1334\":{}},\"comment\":{}}],[\"hidden\",{\"_index\":411,\"name\":{\"1308\":{},\"1413\":{}},\"comment\":{}}],[\"hideoffer\",{\"_index\":17,\"name\":{\"19\":{},\"196\":{},\"241\":{},\"304\":{}},\"comment\":{}}],[\"hideoffermutation\",{\"_index\":210,\"name\":{\"301\":{}},\"comment\":{}}],[\"hideorder\",{\"_index\":23,\"name\":{\"25\":{},\"200\":{},\"249\":{},\"327\":{}},\"comment\":{}}],[\"hideordermutation\",{\"_index\":220,\"name\":{\"324\":{}},\"comment\":{}}],[\"hiderenegotiation\",{\"_index\":216,\"name\":{\"313\":{}},\"comment\":{}}],[\"hiderenegotiationoffer\",{\"_index\":21,\"name\":{\"23\":{},\"204\":{},\"243\":{}},\"comment\":{}}],[\"hiderenegotiationoffermutation\",{\"_index\":215,\"name\":{\"310\":{}},\"comment\":{}}],[\"id\",{\"_index\":217,\"name\":{\"316\":{},\"323\":{},\"346\":{},\"353\":{},\"1129\":{},\"1161\":{},\"1194\":{},\"1280\":{},\"1295\":{},\"1300\":{},\"1309\":{},\"1373\":{},\"1390\":{},\"1414\":{},\"1463\":{}},\"comment\":{}}],[\"inactive\",{\"_index\":81,\"name\":{\"83\":{}},\"comment\":{}}],[\"indexinblock\",{\"_index\":448,\"name\":{\"1374\":{},\"1391\":{}},\"comment\":{}}],[\"inputmaybe\",{\"_index\":181,\"name\":{\"261\":{}},\"comment\":{}}],[\"int\",{\"_index\":397,\"name\":{\"1283\":{}},\"comment\":{}}],[\"interestearnedbycollection\",{\"_index\":519,\"name\":{\"1520\":{}},\"comment\":{}}],[\"internal\",{\"_index\":142,\"name\":{\"156\":{}},\"comment\":{}}],[\"interval\",{\"_index\":435,\"name\":{\"1348\":{}},\"comment\":{}}],[\"isaddnewtranche\",{\"_index\":251,\"name\":{\"448\":{},\"463\":{}},\"comment\":{}}],[\"isapprovednftforall\",{\"_index\":56,\"name\":{\"58\":{}},\"comment\":{}}],[\"isapprovedtoken\",{\"_index\":58,\"name\":{\"60\":{}},\"comment\":{}}],[\"isask\",{\"_index\":203,\"name\":{\"293\":{},\"1310\":{}},\"comment\":{}}],[\"isendlockedup\",{\"_index\":40,\"name\":{\"42\":{},\"510\":{},\"594\":{},\"693\":{}},\"comment\":{}}],[\"isprivate\",{\"_index\":412,\"name\":{\"1311\":{}},\"comment\":{}}],[\"json\",{\"_index\":403,\"name\":{\"1290\":{}},\"comment\":{}}],[\"lastsale\",{\"_index\":467,\"name\":{\"1441\":{}},\"comment\":{}}],[\"lenderaddress\",{\"_index\":190,\"name\":{\"275\":{},\"391\":{},\"413\":{},\"431\":{},\"449\":{},\"464\":{},\"1112\":{},\"1146\":{},\"1181\":{},\"1415\":{}},\"comment\":{}}],[\"lenderavailablebalance\",{\"_index\":460,\"name\":{\"1416\":{}},\"comment\":{}}],[\"lenders\",{\"_index\":128,\"name\":{\"133\":{}},\"comment\":{}}],[\"limit\",{\"_index\":119,\"name\":{\"123\":{},\"136\":{},\"151\":{}},\"comment\":{}}],[\"linkedwallets\",{\"_index\":516,\"name\":{\"1515\":{}},\"comment\":{}}],[\"liquidateloan\",{\"_index\":49,\"name\":{\"51\":{},\"520\":{},\"533\":{},\"603\":{},\"620\":{},\"702\":{},\"719\":{},\"794\":{},\"828\":{},\"864\":{}},\"comment\":{}}],[\"list\",{\"_index\":32,\"name\":{\"34\":{}},\"comment\":{}}],[\"listing\",{\"_index\":465,\"name\":{\"1437\":{}},\"comment\":{}}],[\"listings\",{\"_index\":34,\"name\":{\"36\":{}},\"comment\":{}}],[\"listlistings\",{\"_index\":174,\"name\":{\"211\":{},\"259\":{}},\"comment\":{}}],[\"listlistingsprops\",{\"_index\":136,\"name\":{\"146\":{}},\"comment\":{}}],[\"listlistingsquery\",{\"_index\":386,\"name\":{\"1220\":{}},\"comment\":{}}],[\"listloans\",{\"_index\":175,\"name\":{\"212\":{},\"258\":{}},\"comment\":{}}],[\"listloansprops\",{\"_index\":129,\"name\":{\"135\":{}},\"comment\":{}}],[\"listloansquery\",{\"_index\":387,\"name\":{\"1232\":{}},\"comment\":{}}],[\"listnft\",{\"_index\":162,\"name\":{\"192\":{},\"235\":{}},\"comment\":{}}],[\"listnftmutation\",{\"_index\":227,\"name\":{\"340\":{}},\"comment\":{}}],[\"listoffers\",{\"_index\":178,\"name\":{\"216\":{},\"257\":{}},\"comment\":{}}],[\"listoffersprops\",{\"_index\":118,\"name\":{\"121\":{}},\"comment\":{}}],[\"listoffersquery\",{\"_index\":392,\"name\":{\"1265\":{}},\"comment\":{}}],[\"loan\",{\"_index\":301,\"name\":{\"607\":{},\"706\":{},\"1365\":{},\"1392\":{},\"1464\":{}},\"comment\":{}}],[\"loan_settlement_encode_types\",{\"_index\":315,\"name\":{\"775\":{}},\"comment\":{}}],[\"loanactivity\",{\"_index\":453,\"name\":{\"1386\":{}},\"comment\":{}}],[\"loanauctioned\",{\"_index\":69,\"name\":{\"71\":{}},\"comment\":{}}],[\"loanauctionedwithbuyout\",{\"_index\":70,\"name\":{\"72\":{}},\"comment\":{}}],[\"loancount\",{\"_index\":520,\"name\":{\"1521\":{}},\"comment\":{}}],[\"loancountbycollection\",{\"_index\":521,\"name\":{\"1522\":{}},\"comment\":{}}],[\"loandefaulted\",{\"_index\":71,\"name\":{\"73\":{}},\"comment\":{}}],[\"loanevent\",{\"_index\":481,\"name\":{\"1460\":{}},\"comment\":{}}],[\"loanforeclosed\",{\"_index\":72,\"name\":{\"74\":{}},\"comment\":{}}],[\"loanid\",{\"_index\":252,\"name\":{\"450\":{},\"465\":{},\"1178\":{},\"1375\":{},\"1393\":{},\"1465\":{}},\"comment\":{}}],[\"loaninitiated\",{\"_index\":73,\"name\":{\"75\":{}},\"comment\":{}}],[\"loanliquidated\",{\"_index\":286,\"name\":{\"553\":{},\"638\":{},\"731\":{}},\"comment\":{}}],[\"loanprincipalbycollection\",{\"_index\":522,\"name\":{\"1523\":{}},\"comment\":{}}],[\"loanrepaid\",{\"_index\":74,\"name\":{\"76\":{},\"1432\":{}},\"comment\":{}}],[\"loans\",{\"_index\":31,\"name\":{\"33\":{},\"1235\":{}},\"comment\":{}}],[\"loanscurrencyaddress\",{\"_index\":135,\"name\":{\"145\":{}},\"comment\":{}}],[\"loansenttoauction\",{\"_index\":75,\"name\":{\"77\":{}},\"comment\":{}}],[\"loansortfield\",{\"_index\":428,\"name\":{\"1335\":{}},\"comment\":{}}],[\"loansortinput\",{\"_index\":263,\"name\":{\"482\":{}},\"comment\":{}}],[\"loanstatustype\",{\"_index\":68,\"name\":{\"70\":{}},\"comment\":{}}],[\"loanstotalvolume\",{\"_index\":468,\"name\":{\"1442\":{}},\"comment\":{}}],[\"loantomslloantype\",{\"_index\":226,\"name\":{\"339\":{}},\"comment\":{}}],[\"loanv4\",{\"_index\":422,\"name\":{\"1329\":{}},\"comment\":{}}],[\"loanv5\",{\"_index\":423,\"name\":{\"1330\":{}},\"comment\":{}}],[\"loanv6\",{\"_index\":424,\"name\":{\"1331\":{}},\"comment\":{}}],[\"makecollectionoffer\",{\"_index\":12,\"name\":{\"14\":{}},\"comment\":{}}],[\"makeoffertype\",{\"_index\":421,\"name\":{\"1328\":{}},\"comment\":{}}],[\"makeorder\",{\"_index\":13,\"name\":{\"15\":{}},\"comment\":{}}],[\"maker\",{\"_index\":413,\"name\":{\"1312\":{}},\"comment\":{}}],[\"makerefinanceoffer\",{\"_index\":19,\"name\":{\"21\":{}},\"comment\":{}}],[\"makerefinanceofferprops\",{\"_index\":214,\"name\":{\"309\":{}},\"comment\":{}}],[\"makesinglenftoffer\",{\"_index\":11,\"name\":{\"13\":{}},\"comment\":{}}],[\"marketplace\",{\"_index\":414,\"name\":{\"1313\":{}},\"comment\":{}}],[\"marketplaceenum\",{\"_index\":102,\"name\":{\"104\":{}},\"comment\":{}}],[\"marketplaces\",{\"_index\":138,\"name\":{\"150\":{}},\"comment\":{}}],[\"max\",{\"_index\":436,\"name\":{\"1350\":{}},\"comment\":{}}],[\"maxprincipal\",{\"_index\":92,\"name\":{\"94\":{},\"491\":{},\"1417\":{}},\"comment\":{}}],[\"maxseniorrepayment\",{\"_index\":191,\"name\":{\"276\":{},\"392\":{},\"402\":{},\"414\":{},\"432\":{},\"1418\":{}},\"comment\":{}}],[\"maxseniorrepaymentarg\",{\"_index\":247,\"name\":{\"400\":{}},\"comment\":{}}],[\"maxtranchefloor\",{\"_index\":192,\"name\":{\"277\":{},\"393\":{},\"415\":{},\"433\":{},\"1419\":{}},\"comment\":{}}],[\"maybe\",{\"_index\":393,\"name\":{\"1277\":{}},\"comment\":{}}],[\"min\",{\"_index\":437,\"name\":{\"1351\":{}},\"comment\":{}}],[\"mint\",{\"_index\":332,\"name\":{\"912\":{},\"966\":{}},\"comment\":{}}],[\"msl\",{\"_index\":9,\"name\":{\"11\":{},\"178\":{},\"1012\":{}},\"comment\":{}}],[\"mslv4\",{\"_index\":270,\"name\":{\"499\":{}},\"comment\":{}}],[\"mslv5\",{\"_index\":299,\"name\":{\"582\":{}},\"comment\":{}}],[\"mslv6\",{\"_index\":309,\"name\":{\"681\":{}},\"comment\":{}}],[\"multicall\",{\"_index\":303,\"name\":{\"662\":{},\"751\":{}},\"comment\":{}}],[\"multisourceloan\",{\"_index\":419,\"name\":{\"1325\":{}},\"comment\":{}}],[\"multisourceloanabi\",{\"_index\":438,\"name\":{\"1352\":{},\"1353\":{},\"1354\":{}},\"comment\":{}}],[\"multisourceloanhistory\",{\"_index\":456,\"name\":{\"1394\":{},\"1457\":{}},\"comment\":{}}],[\"multisourceloanv4\",{\"_index\":147,\"name\":{\"167\":{}},\"comment\":{}}],[\"multisourceloanv5\",{\"_index\":148,\"name\":{\"168\":{}},\"comment\":{}}],[\"multisourceloanv6\",{\"_index\":149,\"name\":{\"169\":{}},\"comment\":{}}],[\"name\",{\"_index\":348,\"name\":{\"1008\":{}},\"comment\":{}}],[\"netamount\",{\"_index\":415,\"name\":{\"1314\":{}},\"comment\":{}}],[\"netinterest\",{\"_index\":93,\"name\":{\"95\":{}},\"comment\":{}}],[\"netprincipal\",{\"_index\":94,\"name\":{\"96\":{},\"492\":{},\"1420\":{}},\"comment\":{}}],[\"nextactivity\",{\"_index\":457,\"name\":{\"1395\":{}},\"comment\":{}}],[\"nft\",{\"_index\":123,\"name\":{\"128\":{},\"182\":{},\"1150\":{},\"1163\":{},\"1183\":{},\"1248\":{},\"1252\":{},\"1326\":{}},\"comment\":{}}],[\"nftfi\",{\"_index\":103,\"name\":{\"106\":{}},\"comment\":{}}],[\"nftid\",{\"_index\":35,\"name\":{\"37\":{},\"278\":{},\"394\":{}},\"comment\":{}}],[\"nftidbycontractaddressandtokenid\",{\"_index\":176,\"name\":{\"213\":{},\"225\":{}},\"comment\":{}}],[\"nftidbycontractaddressandtokenidquery\",{\"_index\":389,\"name\":{\"1245\":{}},\"comment\":{}}],[\"nftidbyslugtokenid\",{\"_index\":177,\"name\":{\"214\":{},\"223\":{}},\"comment\":{}}],[\"nftidbyslugtokenidquery\",{\"_index\":390,\"name\":{\"1249\":{}},\"comment\":{}}],[\"nftorderinput\",{\"_index\":200,\"name\":{\"287\":{}},\"comment\":{}}],[\"nfts\",{\"_index\":131,\"name\":{\"140\":{}},\"comment\":{}}],[\"nftscount\",{\"_index\":487,\"name\":{\"1476\":{}},\"comment\":{}}],[\"nftstandard\",{\"_index\":139,\"name\":{\"153\":{}},\"comment\":{}}],[\"nftstatistics\",{\"_index\":466,\"name\":{\"1438\":{}},\"comment\":{}}],[\"node\",{\"_index\":408,\"name\":{\"1298\":{}},\"comment\":{}}],[\"nonce\",{\"_index\":416,\"name\":{\"1315\":{}},\"comment\":{}}],[\"numberofoffers\",{\"_index\":469,\"name\":{\"1443\":{},\"1477\":{}},\"comment\":{}}],[\"numberofpricednfts\",{\"_index\":488,\"name\":{\"1478\":{}},\"comment\":{}}],[\"offer\",{\"_index\":368,\"name\":{\"1107\":{},\"1126\":{},\"1141\":{},\"1158\":{},\"1175\":{},\"1376\":{},\"1400\":{}},\"comment\":{}}],[\"offerexecution\",{\"_index\":224,\"name\":{\"334\":{}},\"comment\":{}}],[\"offerexecutionfromoffers\",{\"_index\":26,\"name\":{\"28\":{}},\"comment\":{}}],[\"offerfromexecutionoffer\",{\"_index\":222,\"name\":{\"332\":{}},\"comment\":{}}],[\"offerhash\",{\"_index\":193,\"name\":{\"279\":{},\"434\":{},\"466\":{},\"1110\":{},\"1144\":{},\"1180\":{},\"1421\":{}},\"comment\":{}}],[\"offerid\",{\"_index\":194,\"name\":{\"280\":{},\"435\":{},\"1111\":{},\"1145\":{},\"1422\":{}},\"comment\":{}}],[\"offerids\",{\"_index\":449,\"name\":{\"1377\":{}},\"comment\":{}}],[\"offers\",{\"_index\":30,\"name\":{\"32\":{}},\"comment\":{}}],[\"offerssortfield\",{\"_index\":83,\"name\":{\"85\":{}},\"comment\":{}}],[\"offerssortinput\",{\"_index\":258,\"name\":{\"476\":{}},\"comment\":{}}],[\"offerstatus\",{\"_index\":76,\"name\":{\"78\":{}},\"comment\":{}}],[\"offervalidator\",{\"_index\":480,\"name\":{\"1459\":{}},\"comment\":{}}],[\"offervalidatorinput\",{\"_index\":182,\"name\":{\"262\":{}},\"comment\":{}}],[\"offervalidators\",{\"_index\":195,\"name\":{\"281\":{},\"395\":{},\"416\":{},\"436\":{}},\"comment\":{}}],[\"olderc721\",{\"_index\":107,\"name\":{\"110\":{},\"184\":{}},\"comment\":{}}],[\"olderc721wrapper\",{\"_index\":160,\"name\":{\"186\":{},\"1068\":{}},\"comment\":{}}],[\"olderc721wrapperabi\",{\"_index\":445,\"name\":{\"1363\":{}},\"comment\":{}}],[\"onerc1155batchreceived\",{\"_index\":345,\"name\":{\"998\":{}},\"comment\":{}}],[\"onerc1155received\",{\"_index\":346,\"name\":{\"1000\":{}},\"comment\":{}}],[\"onerc721received\",{\"_index\":279,\"name\":{\"535\":{},\"622\":{},\"721\":{},\"796\":{},\"830\":{},\"866\":{},\"902\":{},\"956\":{},\"1025\":{}},\"comment\":{}}],[\"onlycollectionoffers\",{\"_index\":126,\"name\":{\"131\":{}},\"comment\":{}}],[\"onlyorexclude\",{\"_index\":268,\"name\":{\"497\":{}},\"comment\":{}}],[\"onlysinglenftoffers\",{\"_index\":124,\"name\":{\"129\":{}},\"comment\":{}}],[\"optional\",{\"_index\":246,\"name\":{\"381\":{}},\"comment\":{}}],[\"optionalnullable\",{\"_index\":420,\"name\":{\"1327\":{}},\"comment\":{}}],[\"order\",{\"_index\":261,\"name\":{\"480\":{},\"485\":{},\"1301\":{}},\"comment\":{}}],[\"orderbystatuses\",{\"_index\":134,\"name\":{\"144\":{}},\"comment\":{}}],[\"ordering\",{\"_index\":99,\"name\":{\"101\":{}},\"comment\":{}}],[\"ordertype\",{\"_index\":417,\"name\":{\"1316\":{}},\"comment\":{}}],[\"originationcountandprincipalbymonth\",{\"_index\":523,\"name\":{\"1524\":{}},\"comment\":{}}],[\"originationfee\",{\"_index\":432,\"name\":{\"1342\":{}},\"comment\":{}}],[\"outperformed\",{\"_index\":82,\"name\":{\"84\":{}},\"comment\":{}}],[\"outstandingaccruedinterest\",{\"_index\":524,\"name\":{\"1525\":{}},\"comment\":{}}],[\"outstandingloancount\",{\"_index\":489,\"name\":{\"1479\":{}},\"comment\":{}}],[\"outstandingnftscount\",{\"_index\":490,\"name\":{\"1480\":{}},\"comment\":{}}],[\"outstandingprincipal\",{\"_index\":491,\"name\":{\"1481\":{},\"1526\":{}},\"comment\":{}}],[\"ownednfts\",{\"_index\":38,\"name\":{\"40\":{},\"215\":{},\"239\":{},\"1256\":{}},\"comment\":{}}],[\"ownednftsquery\",{\"_index\":391,\"name\":{\"1253\":{}},\"comment\":{}}],[\"pageinfo\",{\"_index\":379,\"name\":{\"1202\":{},\"1226\":{},\"1239\":{},\"1259\":{},\"1271\":{}},\"comment\":{}}],[\"paidinterest\",{\"_index\":433,\"name\":{\"1343\":{}},\"comment\":{}}],[\"parseeventlogs\",{\"_index\":297,\"name\":{\"579\":{},\"678\":{},\"771\":{},\"806\":{},\"842\":{},\"882\":{},\"936\":{},\"1002\":{},\"1051\":{},\"1064\":{},\"1097\":{}},\"comment\":{}}],[\"percentageinoutstandingloans\",{\"_index\":492,\"name\":{\"1482\":{}},\"comment\":{}}],[\"placebid\",{\"_index\":50,\"name\":{\"52\":{},\"777\":{},\"798\":{},\"811\":{},\"832\":{},\"847\":{},\"868\":{}},\"comment\":{}}],[\"placebidabitypev5\",{\"_index\":477,\"name\":{\"1455\":{}},\"comment\":{}}],[\"placebidabitypev6\",{\"_index\":478,\"name\":{\"1456\":{}},\"comment\":{}}],[\"prevactivity\",{\"_index\":458,\"name\":{\"1396\":{}},\"comment\":{}}],[\"price\",{\"_index\":418,\"name\":{\"1317\":{}},\"comment\":{}}],[\"principal\",{\"_index\":265,\"name\":{\"493\":{}},\"comment\":{}}],[\"principaladdress\",{\"_index\":196,\"name\":{\"282\":{},\"396\":{},\"417\":{},\"437\":{},\"1378\":{},\"1423\":{}},\"comment\":{}}],[\"principalamount\",{\"_index\":95,\"name\":{\"97\":{},\"283\":{},\"397\":{},\"418\":{},\"438\":{},\"451\":{},\"467\":{},\"1344\":{},\"1424\":{}},\"comment\":{}}],[\"principalofinterest\",{\"_index\":262,\"name\":{\"481\":{}},\"comment\":{}}],[\"principalreceiver\",{\"_index\":225,\"name\":{\"337\":{}},\"comment\":{}}],[\"props\",{\"_index\":366,\"name\":{\"1100\":{}},\"comment\":{}}],[\"protocolfee\",{\"_index\":450,\"name\":{\"1379\":{}},\"comment\":{}}],[\"publicclient\",{\"_index\":145,\"name\":{\"163\":{}},\"comment\":{}}],[\"publishsellandrepayorder\",{\"_index\":168,\"name\":{\"201\":{},\"254\":{}},\"comment\":{}}],[\"publishsellandrepayordermutation\",{\"_index\":373,\"name\":{\"1168\":{}},\"comment\":{}}],[\"purchasebundler\",{\"_index\":159,\"name\":{\"180\":{},\"1005\":{}},\"comment\":{}}],[\"purchasebundlerabi\",{\"_index\":442,\"name\":{\"1360\":{}},\"comment\":{}}],[\"purchasebundlerv5\",{\"_index\":155,\"name\":{\"175\":{}},\"comment\":{}}],[\"purchasebundlerv6\",{\"_index\":156,\"name\":{\"176\":{}},\"comment\":{}}],[\"realizedprofits\",{\"_index\":525,\"name\":{\"1527\":{}},\"comment\":{}}],[\"refinancebatch\",{\"_index\":41,\"name\":{\"43\":{},\"511\":{},\"595\":{},\"694\":{}},\"comment\":{}}],[\"refinancefromloanexecutiondata\",{\"_index\":313,\"name\":{\"769\":{}},\"comment\":{}}],[\"refinancefromoffers\",{\"_index\":28,\"name\":{\"30\":{},\"515\":{},\"599\":{},\"698\":{}},\"comment\":{}}],[\"refinancefull\",{\"_index\":293,\"name\":{\"569\":{},\"654\":{},\"745\":{}},\"comment\":{}}],[\"refinancefullloan\",{\"_index\":42,\"name\":{\"44\":{},\"512\":{},\"596\":{},\"695\":{}},\"comment\":{}}],[\"refinancepartial\",{\"_index\":294,\"name\":{\"571\":{},\"656\":{},\"747\":{}},\"comment\":{}}],[\"refinancepartialbatch\",{\"_index\":295,\"name\":{\"573\":{}},\"comment\":{}}],[\"refinancepartialloan\",{\"_index\":43,\"name\":{\"45\":{},\"513\":{},\"597\":{},\"696\":{}},\"comment\":{}}],[\"rejected\",{\"_index\":141,\"name\":{\"155\":{}},\"comment\":{}}],[\"remainingtime\",{\"_index\":266,\"name\":{\"494\":{}},\"comment\":{}}],[\"removelisting\",{\"_index\":230,\"name\":{\"350\":{}},\"comment\":{}}],[\"removeloancontract\",{\"_index\":317,\"name\":{\"800\":{},\"834\":{},\"870\":{}},\"comment\":{}}],[\"removewhitelistedcallbackcontract\",{\"_index\":287,\"name\":{\"555\":{},\"640\":{},\"733\":{}},\"comment\":{}}],[\"renegotiation\",{\"_index\":377,\"name\":{\"1191\":{}},\"comment\":{}}],[\"renegotiationcountandprincipalbymonth\",{\"_index\":526,\"name\":{\"1528\":{}},\"comment\":{}}],[\"renegotiationid\",{\"_index\":257,\"name\":{\"468\":{},\"1179\":{}},\"comment\":{}}],[\"renegotiationinput\",{\"_index\":115,\"name\":{\"118\":{}},\"comment\":{}}],[\"renegotiationoffer\",{\"_index\":117,\"name\":{\"120\":{}},\"comment\":{}}],[\"renegotiationofferinput\",{\"_index\":249,\"name\":{\"442\":{}},\"comment\":{}}],[\"renegotiationrequest\",{\"_index\":461,\"name\":{\"1431\":{}},\"comment\":{}}],[\"renegotiationrequested\",{\"_index\":434,\"name\":{\"1345\":{}},\"comment\":{}}],[\"repaidactivity\",{\"_index\":451,\"name\":{\"1380\":{}},\"comment\":{}}],[\"repayabitypev4\",{\"_index\":474,\"name\":{\"1452\":{}},\"comment\":{}}],[\"repayabitypev5\",{\"_index\":475,\"name\":{\"1453\":{}},\"comment\":{}}],[\"repayabitypev6\",{\"_index\":476,\"name\":{\"1454\":{}},\"comment\":{}}],[\"repayloan\",{\"_index\":29,\"name\":{\"31\":{},\"508\":{},\"575\":{},\"592\":{},\"658\":{},\"691\":{},\"749\":{}},\"comment\":{}}],[\"repayment\",{\"_index\":96,\"name\":{\"98\":{},\"1425\":{}},\"comment\":{}}],[\"repaymentrate\",{\"_index\":493,\"name\":{\"1483\":{}},\"comment\":{}}],[\"repaymentsignature\",{\"_index\":204,\"name\":{\"294\":{}},\"comment\":{}}],[\"repaymenttime\",{\"_index\":452,\"name\":{\"1381\":{}},\"comment\":{}}],[\"replaceorderid\",{\"_index\":205,\"name\":{\"295\":{}},\"comment\":{}}],[\"requesttransferowner\",{\"_index\":310,\"name\":{\"763\":{},\"1043\":{}},\"comment\":{}}],[\"requiresliquidation\",{\"_index\":197,\"name\":{\"284\":{},\"398\":{},\"419\":{},\"439\":{},\"452\":{},\"469\":{},\"1426\":{}},\"comment\":{}}],[\"result\",{\"_index\":374,\"name\":{\"1171\":{},\"1223\":{},\"1268\":{}},\"comment\":{}}],[\"revokedelegate\",{\"_index\":47,\"name\":{\"49\":{},\"518\":{},\"602\":{},\"666\":{},\"701\":{},\"755\":{}},\"comment\":{}}],[\"revokedelegationsandemitloan\",{\"_index\":48,\"name\":{\"50\":{},\"519\":{},\"591\":{},\"690\":{}},\"comment\":{}}],[\"safecontractwrite\",{\"_index\":277,\"name\":{\"529\":{},\"616\":{},\"715\":{},\"788\":{},\"822\":{},\"858\":{},\"898\":{},\"952\":{},\"1021\":{},\"1063\":{},\"1079\":{}},\"comment\":{}}],[\"safetransferfrom\",{\"_index\":330,\"name\":{\"908\":{},\"962\":{},\"1085\":{}},\"comment\":{}}],[\"sale\",{\"_index\":511,\"name\":{\"1502\":{}},\"comment\":{}}],[\"savecollectionoffer\",{\"_index\":165,\"name\":{\"195\":{},\"255\":{}},\"comment\":{}}],[\"savecollectionoffermutation\",{\"_index\":370,\"name\":{\"1123\":{}},\"comment\":{}}],[\"saverefinanceoffer\",{\"_index\":179,\"name\":{\"256\":{}},\"comment\":{}}],[\"saverenegotiationoffer\",{\"_index\":170,\"name\":{\"205\":{}},\"comment\":{}}],[\"saverenegotiationoffermutation\",{\"_index\":376,\"name\":{\"1188\":{}},\"comment\":{}}],[\"savesinglenftoffer\",{\"_index\":167,\"name\":{\"198\":{},\"253\":{}},\"comment\":{}}],[\"savesinglenftoffermutation\",{\"_index\":372,\"name\":{\"1155\":{}},\"comment\":{}}],[\"scalars\",{\"_index\":394,\"name\":{\"1278\":{}},\"comment\":{}}],[\"sell\",{\"_index\":356,\"name\":{\"1039\":{}},\"comment\":{}}],[\"sellandrepayorder\",{\"_index\":209,\"name\":{\"300\":{}},\"comment\":{}}],[\"sendtransactiondata\",{\"_index\":298,\"name\":{\"581\":{},\"680\":{},\"773\":{},\"808\":{},\"844\":{},\"884\":{},\"938\":{},\"1004\":{},\"1053\":{},\"1066\":{},\"1099\":{}},\"comment\":{}}],[\"setapprovalforall\",{\"_index\":331,\"name\":{\"910\":{},\"964\":{},\"1087\":{}},\"comment\":{}}],[\"setdelegateregistry\",{\"_index\":306,\"name\":{\"672\":{}},\"comment\":{}}],[\"setflashactioncontract\",{\"_index\":307,\"name\":{\"674\":{},\"759\":{}},\"comment\":{}}],[\"setmaxsources\",{\"_index\":296,\"name\":{\"577\":{},\"660\":{}},\"comment\":{}}],[\"setminlockperiod\",{\"_index\":308,\"name\":{\"676\":{},\"761\":{}},\"comment\":{}}],[\"setprotocolfee\",{\"_index\":288,\"name\":{\"557\":{},\"642\":{},\"735\":{},\"1027\":{}},\"comment\":{}}],[\"settaxes\",{\"_index\":358,\"name\":{\"1047\":{}},\"comment\":{}}],[\"settimeformainlendertobuy\",{\"_index\":322,\"name\":{\"878\":{}},\"comment\":{}}],[\"settleauction\",{\"_index\":51,\"name\":{\"53\":{},\"780\":{},\"802\":{},\"814\":{},\"836\":{},\"850\":{},\"872\":{}},\"comment\":{}}],[\"settleauctionwithbuyout\",{\"_index\":52,\"name\":{\"54\":{},\"779\":{},\"813\":{},\"849\":{}},\"comment\":{}}],[\"settlewithbuyout\",{\"_index\":323,\"name\":{\"880\":{}},\"comment\":{}}],[\"showoffer\",{\"_index\":213,\"name\":{\"308\":{}},\"comment\":{}}],[\"showorder\",{\"_index\":24,\"name\":{\"26\":{},\"202\":{},\"251\":{},\"331\":{}},\"comment\":{}}],[\"showordermutation\",{\"_index\":221,\"name\":{\"328\":{}},\"comment\":{}}],[\"showrenegotiation\",{\"_index\":219,\"name\":{\"320\":{}},\"comment\":{}}],[\"signature\",{\"_index\":198,\"name\":{\"285\":{},\"296\":{},\"440\":{},\"470\":{},\"475\":{},\"1291\":{},\"1318\":{},\"1427\":{}},\"comment\":{}}],[\"signedrenegotiationofferinput\",{\"_index\":256,\"name\":{\"457\":{}},\"comment\":{}}],[\"signeraddress\",{\"_index\":199,\"name\":{\"286\":{},\"399\":{},\"420\":{},\"441\":{},\"453\":{},\"471\":{},\"1113\":{},\"1147\":{},\"1182\":{},\"1428\":{}},\"comment\":{}}],[\"signoffer\",{\"_index\":271,\"name\":{\"501\":{},\"584\":{},\"683\":{}},\"comment\":{}}],[\"signrenegotiationoffer\",{\"_index\":272,\"name\":{\"502\":{},\"585\":{},\"684\":{}},\"comment\":{}}],[\"singlenftoffer\",{\"_index\":111,\"name\":{\"114\":{}},\"comment\":{}}],[\"singlenftofferinput\",{\"_index\":109,\"name\":{\"112\":{},\"382\":{}},\"comment\":{}}],[\"singlenftsignedofferinput\",{\"_index\":185,\"name\":{\"266\":{}},\"comment\":{}}],[\"sortby\",{\"_index\":121,\"name\":{\"125\":{},\"142\":{}},\"comment\":{}}],[\"source\",{\"_index\":462,\"name\":{\"1433\":{}},\"comment\":{}}],[\"sourcehistory\",{\"_index\":513,\"name\":{\"1509\":{}},\"comment\":{}}],[\"starttime\",{\"_index\":206,\"name\":{\"297\":{},\"1319\":{},\"1346\":{},\"1382\":{}},\"comment\":{}}],[\"statbycollection\",{\"_index\":533,\"name\":{\"1535\":{}},\"comment\":{}}],[\"statistics\",{\"_index\":472,\"name\":{\"1449\":{}},\"comment\":{}}],[\"status\",{\"_index\":97,\"name\":{\"99\":{},\"134\":{},\"1130\":{},\"1162\":{},\"1195\":{},\"1320\":{},\"1383\":{},\"1429\":{}},\"comment\":{}}],[\"statuses\",{\"_index\":132,\"name\":{\"141\":{}},\"comment\":{}}],[\"strictimprovement\",{\"_index\":253,\"name\":{\"454\":{},\"472\":{}},\"comment\":{}}],[\"string\",{\"_index\":395,\"name\":{\"1281\":{}},\"comment\":{}}],[\"taker\",{\"_index\":207,\"name\":{\"298\":{},\"1321\":{}},\"comment\":{}}],[\"targetprincipal\",{\"_index\":254,\"name\":{\"455\":{},\"473\":{}},\"comment\":{}}],[\"terms\",{\"_index\":133,\"name\":{\"143\":{}},\"comment\":{}}],[\"termsfilter\",{\"_index\":264,\"name\":{\"486\":{}},\"comment\":{}}],[\"timestamp\",{\"_index\":406,\"name\":{\"1296\":{},\"1322\":{},\"1384\":{},\"1397\":{},\"1466\":{}},\"comment\":{}}],[\"tokenid\",{\"_index\":208,\"name\":{\"299\":{},\"335\":{},\"380\":{},\"1153\":{},\"1166\":{},\"1186\":{}},\"comment\":{}}],[\"tokenids\",{\"_index\":237,\"name\":{\"362\":{},\"368\":{}},\"comment\":{}}],[\"tokens\",{\"_index\":240,\"name\":{\"369\":{}},\"comment\":{}}],[\"tokenstandardtype\",{\"_index\":104,\"name\":{\"107\":{}},\"comment\":{}}],[\"toptraitfloorprice\",{\"_index\":470,\"name\":{\"1444\":{}},\"comment\":{}}],[\"topuprequest\",{\"_index\":463,\"name\":{\"1434\":{}},\"comment\":{}}],[\"totalcount\",{\"_index\":388,\"name\":{\"1238\":{}},\"comment\":{}}],[\"totalinterest\",{\"_index\":98,\"name\":{\"100\":{},\"1347\":{}},\"comment\":{}}],[\"totallentprincipal\",{\"_index\":527,\"name\":{\"1529\":{}},\"comment\":{}}],[\"totalloancount\",{\"_index\":528,\"name\":{\"1530\":{}},\"comment\":{}}],[\"totalloanvolume\",{\"_index\":494,\"name\":{\"1484\":{}},\"comment\":{}}],[\"totalloanvolume1d\",{\"_index\":495,\"name\":{\"1485\":{}},\"comment\":{}}],[\"totalloanvolume1m\",{\"_index\":496,\"name\":{\"1486\":{}},\"comment\":{}}],[\"totalloanvolume1w\",{\"_index\":497,\"name\":{\"1487\":{}},\"comment\":{}}],[\"totalloanvolume1y\",{\"_index\":498,\"name\":{\"1488\":{}},\"comment\":{}}],[\"totalloanvolume2m\",{\"_index\":499,\"name\":{\"1489\":{}},\"comment\":{}}],[\"totalloanvolume3m\",{\"_index\":500,\"name\":{\"1490\":{}},\"comment\":{}}],[\"totalloanvolume4m\",{\"_index\":501,\"name\":{\"1491\":{}},\"comment\":{}}],[\"totaloutstandingprincipal\",{\"_index\":502,\"name\":{\"1492\":{}},\"comment\":{}}],[\"totalvolume\",{\"_index\":503,\"name\":{\"1493\":{}},\"comment\":{}}],[\"totalvolume1d\",{\"_index\":504,\"name\":{\"1494\":{}},\"comment\":{}}],[\"totalvolume1m\",{\"_index\":505,\"name\":{\"1495\":{}},\"comment\":{}}],[\"totalvolume1w\",{\"_index\":506,\"name\":{\"1496\":{}},\"comment\":{}}],[\"totalvolume1y\",{\"_index\":507,\"name\":{\"1497\":{}},\"comment\":{}}],[\"totalvolume2m\",{\"_index\":508,\"name\":{\"1498\":{}},\"comment\":{}}],[\"totalvolume3m\",{\"_index\":509,\"name\":{\"1499\":{}},\"comment\":{}}],[\"totalvolume4m\",{\"_index\":510,\"name\":{\"1500\":{}},\"comment\":{}}],[\"trait\",{\"_index\":471,\"name\":{\"1445\":{}},\"comment\":{}}],[\"trancheindex\",{\"_index\":255,\"name\":{\"456\":{},\"474\":{}},\"comment\":{}}],[\"transferfrom\",{\"_index\":329,\"name\":{\"906\":{},\"960\":{},\"1083\":{}},\"comment\":{}}],[\"transferownership\",{\"_index\":278,\"name\":{\"531\":{},\"618\":{},\"717\":{},\"790\":{},\"824\":{},\"860\":{},\"900\":{},\"954\":{},\"1023\":{}},\"comment\":{}}],[\"txhash\",{\"_index\":407,\"name\":{\"1297\":{},\"1323\":{},\"1385\":{},\"1398\":{}},\"comment\":{}}],[\"type\",{\"_index\":349,\"name\":{\"1009\":{},\"1450\":{}},\"comment\":{}}],[\"types\",{\"_index\":108,\"name\":{\"111\":{}},\"comment\":{}}],[\"unhideoffer\",{\"_index\":18,\"name\":{\"20\":{},\"199\":{},\"245\":{}},\"comment\":{}}],[\"unhideoffermutation\",{\"_index\":212,\"name\":{\"305\":{}},\"comment\":{}}],[\"unhiderenegotiationoffer\",{\"_index\":22,\"name\":{\"24\":{},\"206\":{},\"247\":{}},\"comment\":{}}],[\"unhiderenegotiationoffermutation\",{\"_index\":218,\"name\":{\"317\":{}},\"comment\":{}}],[\"unlist\",{\"_index\":33,\"name\":{\"35\":{}},\"comment\":{}}],[\"unlistnft\",{\"_index\":163,\"name\":{\"193\":{},\"237\":{}},\"comment\":{}}],[\"unlistnftmutation\",{\"_index\":229,\"name\":{\"347\":{}},\"comment\":{}}],[\"unsignedcollectionoffer\",{\"_index\":113,\"name\":{\"116\":{}},\"comment\":{}}],[\"unsignedrenegotiationoffer\",{\"_index\":116,\"name\":{\"119\":{}},\"comment\":{}}],[\"unsignedsinglenftoffer\",{\"_index\":110,\"name\":{\"113\":{}},\"comment\":{}}],[\"unwrap\",{\"_index\":362,\"name\":{\"1071\":{},\"1089\":{}},\"comment\":{}}],[\"unwrapbatch\",{\"_index\":363,\"name\":{\"1091\":{}},\"comment\":{}}],[\"unwrapolderc721\",{\"_index\":66,\"name\":{\"68\":{}},\"comment\":{}}],[\"updateimprovementminimum\",{\"_index\":289,\"name\":{\"559\":{},\"644\":{}},\"comment\":{}}],[\"updateliquidationauctionduration\",{\"_index\":290,\"name\":{\"561\":{},\"646\":{},\"737\":{}},\"comment\":{}}],[\"updateliquidationcontract\",{\"_index\":291,\"name\":{\"563\":{},\"648\":{},\"739\":{}},\"comment\":{}}],[\"updateliquidationdistributor\",{\"_index\":320,\"name\":{\"840\":{},\"876\":{}},\"comment\":{}}],[\"updateminimprovementapr\",{\"_index\":311,\"name\":{\"765\":{}},\"comment\":{}}],[\"updatemultisourceloanaddressfirst\",{\"_index\":357,\"name\":{\"1041\":{}},\"comment\":{}}],[\"updateprotocolfee\",{\"_index\":292,\"name\":{\"565\":{},\"650\":{},\"741\":{},\"1029\":{}},\"comment\":{}}],[\"updatetaxes\",{\"_index\":359,\"name\":{\"1049\":{}},\"comment\":{}}],[\"updatetriggerfee\",{\"_index\":318,\"name\":{\"804\":{},\"838\":{},\"874\":{}},\"comment\":{}}],[\"user\",{\"_index\":137,\"name\":{\"149\":{},\"1501\":{}},\"comment\":{}}],[\"userfilter\",{\"_index\":267,\"name\":{\"495\":{}},\"comment\":{}}],[\"userid\",{\"_index\":269,\"name\":{\"498\":{}},\"comment\":{}}],[\"userstatistics\",{\"_index\":517,\"name\":{\"1516\":{}},\"comment\":{}}],[\"uservault\",{\"_index\":10,\"name\":{\"12\":{},\"181\":{}},\"comment\":{}}],[\"uservaultabi\",{\"_index\":441,\"name\":{\"1358\":{},\"1359\":{}},\"comment\":{}}],[\"uservaultv5\",{\"_index\":153,\"name\":{\"173\":{},\"885\":{}},\"comment\":{}}],[\"uservaultv6\",{\"_index\":154,\"name\":{\"174\":{},\"939\":{}},\"comment\":{}}],[\"validator\",{\"_index\":184,\"name\":{\"265\":{}},\"comment\":{}}],[\"validators\",{\"_index\":369,\"name\":{\"1115\":{},\"1149\":{},\"1430\":{}},\"comment\":{}}],[\"value\",{\"_index\":473,\"name\":{\"1451\":{},\"1539\":{}},\"comment\":{}}],[\"vaultid\",{\"_index\":236,\"name\":{\"360\":{},\"366\":{}},\"comment\":{}}],[\"void\",{\"_index\":404,\"name\":{\"1292\":{}},\"comment\":{}}],[\"wallet\",{\"_index\":3,\"name\":{\"3\":{},\"158\":{},\"526\":{},\"613\":{},\"712\":{},\"785\":{},\"819\":{},\"855\":{},\"895\":{},\"949\":{},\"1018\":{},\"1060\":{},\"1076\":{},\"1103\":{},\"1364\":{}},\"comment\":{}}],[\"walletclient\",{\"_index\":146,\"name\":{\"165\":{}},\"comment\":{}}],[\"wavgoutstandingapr\",{\"_index\":529,\"name\":{\"1531\":{}},\"comment\":{}}],[\"wavgoutstandingaprbycollection\",{\"_index\":530,\"name\":{\"1532\":{}},\"comment\":{}}],[\"wavgrepaidapr\",{\"_index\":531,\"name\":{\"1533\":{}},\"comment\":{}}],[\"wavgrepaidaprbycollection\",{\"_index\":532,\"name\":{\"1534\":{}},\"comment\":{}}],[\"withdrawerc1155\",{\"_index\":343,\"name\":{\"994\":{}},\"comment\":{}}],[\"withdrawerc1155s\",{\"_index\":344,\"name\":{\"996\":{}},\"comment\":{}}],[\"withdrawerc20\",{\"_index\":337,\"name\":{\"926\":{},\"980\":{}},\"comment\":{}}],[\"withdrawerc20s\",{\"_index\":338,\"name\":{\"928\":{},\"982\":{}},\"comment\":{}}],[\"withdrawerc721\",{\"_index\":339,\"name\":{\"930\":{},\"984\":{}},\"comment\":{}}],[\"withdrawerc721s\",{\"_index\":340,\"name\":{\"932\":{},\"986\":{}},\"comment\":{}}],[\"withdraweth\",{\"_index\":341,\"name\":{\"934\":{},\"988\":{}},\"comment\":{}}],[\"wrap\",{\"_index\":364,\"name\":{\"1093\":{}},\"comment\":{}}],[\"wrapbatch\",{\"_index\":365,\"name\":{\"1095\":{}},\"comment\":{}}],[\"wrapolderc721\",{\"_index\":65,\"name\":{\"67\":{},\"1070\":{}},\"comment\":{}}],[\"wrapolderc721args\",{\"_index\":243,\"name\":{\"372\":{}},\"comment\":{}}],[\"wrappercollections\",{\"_index\":245,\"name\":{\"379\":{}},\"comment\":{}}]],\"pipeline\":[]}}"); \ No newline at end of file diff --git a/docs/0.17.2/assets/style.css b/docs/0.17.2/assets/style.css new file mode 100644 index 00000000..18b4f8fe --- /dev/null +++ b/docs/0.17.2/assets/style.css @@ -0,0 +1,1367 @@ +:root { + /* Light */ + --light-color-background: #f2f4f8; + --light-color-background-secondary: #eff0f1; + --light-color-warning-text: #222; + --light-color-background-warning: #e6e600; + --light-color-icon-background: var(--light-color-background); + --light-color-accent: #c5c7c9; + --light-color-active-menu-item: var(--light-color-accent); + --light-color-text: #222; + --light-color-text-aside: #6e6e6e; + --light-color-link: #1f70c2; + + --light-color-ts-project: #b111c9; + --light-color-ts-module: var(--light-color-ts-project); + --light-color-ts-namespace: var(--light-color-ts-project); + --light-color-ts-enum: #7e6f15; + --light-color-ts-enum-member: var(--light-color-ts-enum); + --light-color-ts-variable: #4760ec; + --light-color-ts-function: #572be7; + --light-color-ts-class: #1f70c2; + --light-color-ts-interface: #108024; + --light-color-ts-constructor: var(--light-color-ts-class); + --light-color-ts-property: var(--light-color-ts-variable); + --light-color-ts-method: var(--light-color-ts-function); + --light-color-ts-call-signature: var(--light-color-ts-method); + --light-color-ts-index-signature: var(--light-color-ts-property); + --light-color-ts-constructor-signature: var(--light-color-ts-constructor); + --light-color-ts-parameter: var(--light-color-ts-variable); + /* type literal not included as links will never be generated to it */ + --light-color-ts-type-parameter: var(--light-color-ts-type-alias); + --light-color-ts-accessor: var(--light-color-ts-property); + --light-color-ts-get-signature: var(--light-color-ts-accessor); + --light-color-ts-set-signature: var(--light-color-ts-accessor); + /* object literal not included as it is not used and will be removed in 0.25 */ + --light-color-ts-type-alias: #d51270; + /* reference not included as links will be colored with the kind that it points to */ + + --light-external-icon: url("data:image/svg+xml;utf8,"); + --light-color-scheme: light; + + /* Dark */ + --dark-color-background: #2b2e33; + --dark-color-background-secondary: #1e2024; + --dark-color-background-warning: #bebe00; + --dark-color-warning-text: #222; + --dark-color-icon-background: var(--dark-color-background-secondary); + --dark-color-accent: #9096a2; + --dark-color-active-menu-item: #5d5d6a; + --dark-color-text: #f5f5f5; + --dark-color-text-aside: #dddddd; + --dark-color-link: #00aff4; + + --dark-color-ts-project: #e358ff; + --dark-color-ts-module: var(--dark-color-ts-project); + --dark-color-ts-namespace: var(--dark-color-ts-project); + --dark-color-ts-enum: #f4d93e; + --dark-color-ts-enum-member: var(--dark-color-ts-enum); + --dark-color-ts-variable: #798dff; + --dark-color-ts-function: #a280ff; + --dark-color-ts-class: #8ac4ff; + --dark-color-ts-interface: #6cff87; + --dark-color-ts-constructor: var(--dark-color-ts-class); + --dark-color-ts-property: var(--dark-color-ts-variable); + --dark-color-ts-method: var(--dark-color-ts-function); + --dark-color-ts-call-signature: var(--dark-color-ts-method); + --dark-color-ts-index-signature: var(--dark-color-ts-property); + --dark-color-ts-constructor-signature: var(--dark-color-ts-constructor); + --dark-color-ts-parameter: var(--dark-color-ts-variable); + /* type literal not included as links will never be generated to it */ + --dark-color-ts-type-parameter: var(--dark-color-ts-type-alias); + --dark-color-ts-accessor: var(--dark-color-ts-property); + --dark-color-ts-get-signature: var(--dark-color-ts-accessor); + --dark-color-ts-set-signature: var(--dark-color-ts-accessor); + /* object literal not included as it is not used and will be removed in 0.25 */ + --dark-color-ts-type-alias: #ff6492; + /* reference not included as links will be colored with the kind that it points to */ + + --dark-external-icon: url("data:image/svg+xml;utf8,"); + --dark-color-scheme: dark; +} + +@media (prefers-color-scheme: light) { + :root { + --color-background: var(--light-color-background); + --color-background-secondary: var(--light-color-background-secondary); + --color-background-warning: var(--light-color-background-warning); + --color-warning-text: var(--light-color-warning-text); + --color-icon-background: var(--light-color-icon-background); + --color-accent: var(--light-color-accent); + --color-active-menu-item: var(--light-color-active-menu-item); + --color-text: var(--light-color-text); + --color-text-aside: var(--light-color-text-aside); + --color-link: var(--light-color-link); + + --color-ts-module: var(--light-color-ts-module); + --color-ts-namespace: var(--light-color-ts-namespace); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-enum-member: var(--light-color-ts-enum-member); + --color-ts-variable: var(--light-color-ts-variable); + --color-ts-function: var(--light-color-ts-function); + --color-ts-class: var(--light-color-ts-class); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-constructor: var(--light-color-ts-constructor); + --color-ts-property: var(--light-color-ts-property); + --color-ts-method: var(--light-color-ts-method); + --color-ts-call-signature: var(--light-color-ts-call-signature); + --color-ts-index-signature: var(--light-color-ts-index-signature); + --color-ts-constructor-signature: var( + --light-color-ts-constructor-signature + ); + --color-ts-parameter: var(--light-color-ts-parameter); + --color-ts-type-parameter: var(--light-color-ts-type-parameter); + --color-ts-accessor: var(--light-color-ts-accessor); + --color-ts-get-signature: var(--light-color-ts-get-signature); + --color-ts-set-signature: var(--light-color-ts-set-signature); + --color-ts-type-alias: var(--light-color-ts-type-alias); + + --external-icon: var(--light-external-icon); + --color-scheme: var(--light-color-scheme); + } +} + +@media (prefers-color-scheme: dark) { + :root { + --color-background: var(--dark-color-background); + --color-background-secondary: var(--dark-color-background-secondary); + --color-background-warning: var(--dark-color-background-warning); + --color-warning-text: var(--dark-color-warning-text); + --color-icon-background: var(--dark-color-icon-background); + --color-accent: var(--dark-color-accent); + --color-active-menu-item: var(--dark-color-active-menu-item); + --color-text: var(--dark-color-text); + --color-text-aside: var(--dark-color-text-aside); + --color-link: var(--dark-color-link); + + --color-ts-module: var(--dark-color-ts-module); + --color-ts-namespace: var(--dark-color-ts-namespace); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-enum-member: var(--dark-color-ts-enum-member); + --color-ts-variable: var(--dark-color-ts-variable); + --color-ts-function: var(--dark-color-ts-function); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-constructor: var(--dark-color-ts-constructor); + --color-ts-property: var(--dark-color-ts-property); + --color-ts-method: var(--dark-color-ts-method); + --color-ts-call-signature: var(--dark-color-ts-call-signature); + --color-ts-index-signature: var(--dark-color-ts-index-signature); + --color-ts-constructor-signature: var( + --dark-color-ts-constructor-signature + ); + --color-ts-parameter: var(--dark-color-ts-parameter); + --color-ts-type-parameter: var(--dark-color-ts-type-parameter); + --color-ts-accessor: var(--dark-color-ts-accessor); + --color-ts-get-signature: var(--dark-color-ts-get-signature); + --color-ts-set-signature: var(--dark-color-ts-set-signature); + --color-ts-type-alias: var(--dark-color-ts-type-alias); + + --external-icon: var(--dark-external-icon); + --color-scheme: var(--dark-color-scheme); + } +} + +html { + color-scheme: var(--color-scheme); +} + +body { + margin: 0; +} + +:root[data-theme="light"] { + --color-background: var(--light-color-background); + --color-background-secondary: var(--light-color-background-secondary); + --color-background-warning: var(--light-color-background-warning); + --color-warning-text: var(--light-color-warning-text); + --color-icon-background: var(--light-color-icon-background); + --color-accent: var(--light-color-accent); + --color-active-menu-item: var(--light-color-active-menu-item); + --color-text: var(--light-color-text); + --color-text-aside: var(--light-color-text-aside); + --color-link: var(--light-color-link); + + --color-ts-module: var(--light-color-ts-module); + --color-ts-namespace: var(--light-color-ts-namespace); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-enum-member: var(--light-color-ts-enum-member); + --color-ts-variable: var(--light-color-ts-variable); + --color-ts-function: var(--light-color-ts-function); + --color-ts-class: var(--light-color-ts-class); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-constructor: var(--light-color-ts-constructor); + --color-ts-property: var(--light-color-ts-property); + --color-ts-method: var(--light-color-ts-method); + --color-ts-call-signature: var(--light-color-ts-call-signature); + --color-ts-index-signature: var(--light-color-ts-index-signature); + --color-ts-constructor-signature: var( + --light-color-ts-constructor-signature + ); + --color-ts-parameter: var(--light-color-ts-parameter); + --color-ts-type-parameter: var(--light-color-ts-type-parameter); + --color-ts-accessor: var(--light-color-ts-accessor); + --color-ts-get-signature: var(--light-color-ts-get-signature); + --color-ts-set-signature: var(--light-color-ts-set-signature); + --color-ts-type-alias: var(--light-color-ts-type-alias); + + --external-icon: var(--light-external-icon); + --color-scheme: var(--light-color-scheme); +} + +:root[data-theme="dark"] { + --color-background: var(--dark-color-background); + --color-background-secondary: var(--dark-color-background-secondary); + --color-background-warning: var(--dark-color-background-warning); + --color-warning-text: var(--dark-color-warning-text); + --color-icon-background: var(--dark-color-icon-background); + --color-accent: var(--dark-color-accent); + --color-active-menu-item: var(--dark-color-active-menu-item); + --color-text: var(--dark-color-text); + --color-text-aside: var(--dark-color-text-aside); + --color-link: var(--dark-color-link); + + --color-ts-module: var(--dark-color-ts-module); + --color-ts-namespace: var(--dark-color-ts-namespace); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-enum-member: var(--dark-color-ts-enum-member); + --color-ts-variable: var(--dark-color-ts-variable); + --color-ts-function: var(--dark-color-ts-function); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-constructor: var(--dark-color-ts-constructor); + --color-ts-property: var(--dark-color-ts-property); + --color-ts-method: var(--dark-color-ts-method); + --color-ts-call-signature: var(--dark-color-ts-call-signature); + --color-ts-index-signature: var(--dark-color-ts-index-signature); + --color-ts-constructor-signature: var( + --dark-color-ts-constructor-signature + ); + --color-ts-parameter: var(--dark-color-ts-parameter); + --color-ts-type-parameter: var(--dark-color-ts-type-parameter); + --color-ts-accessor: var(--dark-color-ts-accessor); + --color-ts-get-signature: var(--dark-color-ts-get-signature); + --color-ts-set-signature: var(--dark-color-ts-set-signature); + --color-ts-type-alias: var(--dark-color-ts-type-alias); + + --external-icon: var(--dark-external-icon); + --color-scheme: var(--dark-color-scheme); +} + +.always-visible, +.always-visible .tsd-signatures { + display: inherit !important; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + line-height: 1.2; +} + +h1 > a, +h2 > a, +h3 > a, +h4 > a, +h5 > a, +h6 > a { + text-decoration: none; + color: var(--color-text); +} + +h1 { + font-size: 1.875rem; + margin: 0.67rem 0; +} + +h2 { + font-size: 1.5rem; + margin: 0.83rem 0; +} + +h3 { + font-size: 1.25rem; + margin: 1rem 0; +} + +h4 { + font-size: 1.05rem; + margin: 1.33rem 0; +} + +h5 { + font-size: 1rem; + margin: 1.5rem 0; +} + +h6 { + font-size: 0.875rem; + margin: 2.33rem 0; +} + +.uppercase { + text-transform: uppercase; +} + +dl, +menu, +ol, +ul { + margin: 1em 0; +} + +dd { + margin: 0 0 0 40px; +} + +.container { + max-width: 1700px; + padding: 0 2rem; +} + +/* Footer */ +.tsd-generator { + border-top: 1px solid var(--color-accent); + padding-top: 1rem; + padding-bottom: 1rem; + max-height: 3.5rem; +} + +.tsd-generator > p { + margin-top: 0; + margin-bottom: 0; + padding: 0 1rem; +} + +.container-main { + margin: 0 auto; + /* toolbar, footer, margin */ + min-height: calc(100vh - 41px - 56px - 4rem); +} + +@keyframes fade-in { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes fade-out { + from { + opacity: 1; + visibility: visible; + } + to { + opacity: 0; + } +} +@keyframes fade-in-delayed { + 0% { + opacity: 0; + } + 33% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@keyframes fade-out-delayed { + 0% { + opacity: 1; + visibility: visible; + } + 66% { + opacity: 0; + } + 100% { + opacity: 0; + } +} +@keyframes pop-in-from-right { + from { + transform: translate(100%, 0); + } + to { + transform: translate(0, 0); + } +} +@keyframes pop-out-to-right { + from { + transform: translate(0, 0); + visibility: visible; + } + to { + transform: translate(100%, 0); + } +} +body { + background: var(--color-background); + font-family: "Segoe UI", sans-serif; + font-size: 16px; + color: var(--color-text); +} + +a { + color: var(--color-link); + text-decoration: none; +} +a:hover { + text-decoration: underline; +} +a.external[target="_blank"] { + background-image: var(--external-icon); + background-position: top 3px right; + background-repeat: no-repeat; + padding-right: 13px; +} + +code, +pre { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + padding: 0.2em; + margin: 0; + font-size: 0.875rem; + border-radius: 0.8em; +} + +pre { + position: relative; + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; + padding: 10px; + border: 1px solid var(--color-accent); +} +pre code { + padding: 0; + font-size: 100%; +} +pre > button { + position: absolute; + top: 10px; + right: 10px; + opacity: 0; + transition: opacity 0.1s; + box-sizing: border-box; +} +pre:hover > button, +pre > button.visible { + opacity: 1; +} + +blockquote { + margin: 1em 0; + padding-left: 1em; + border-left: 4px solid gray; +} + +.tsd-typography { + line-height: 1.333em; +} +.tsd-typography ul { + list-style: square; + padding: 0 0 0 20px; + margin: 0; +} +.tsd-typography h4, +.tsd-typography .tsd-index-panel h3, +.tsd-index-panel .tsd-typography h3, +.tsd-typography h5, +.tsd-typography h6 { + font-size: 1em; + margin: 0; +} +.tsd-typography h5, +.tsd-typography h6 { + font-weight: normal; +} +.tsd-typography p, +.tsd-typography ul, +.tsd-typography ol { + margin: 1em 0; +} + +.tsd-breadcrumb { + margin: 0; + padding: 0; + color: var(--color-text-aside); +} +.tsd-breadcrumb a { + color: var(--color-text-aside); + text-decoration: none; +} +.tsd-breadcrumb a:hover { + text-decoration: underline; +} +.tsd-breadcrumb li { + display: inline; +} +.tsd-breadcrumb li:after { + content: " / "; +} + +.tsd-comment-tags { + display: flex; + flex-direction: column; +} +dl.tsd-comment-tag-group { + display: flex; + align-items: center; + overflow: hidden; + margin: 0.5em 0; +} +dl.tsd-comment-tag-group dt { + display: flex; + margin-right: 0.5em; + font-size: 0.875em; + font-weight: normal; +} +dl.tsd-comment-tag-group dd { + margin: 0; +} +code.tsd-tag { + padding: 0.25em 0.4em; + border: 0.1em solid var(--color-accent); + margin-right: 0.25em; + font-size: 70%; +} +h1 code.tsd-tag:first-of-type { + margin-left: 0.25em; +} + +dl.tsd-comment-tag-group dd:before, +dl.tsd-comment-tag-group dd:after { + content: " "; +} +dl.tsd-comment-tag-group dd pre, +dl.tsd-comment-tag-group dd:after { + clear: both; +} +dl.tsd-comment-tag-group p { + margin: 0; +} + +.tsd-panel.tsd-comment .lead { + font-size: 1.1em; + line-height: 1.333em; + margin-bottom: 2em; +} +.tsd-panel.tsd-comment .lead:last-child { + margin-bottom: 0; +} + +.tsd-filter-visibility h4 { + font-size: 1rem; + padding-top: 0.75rem; + padding-bottom: 0.5rem; + margin: 0; +} +.tsd-filter-item:not(:last-child) { + margin-bottom: 0.5rem; +} +.tsd-filter-input { + display: flex; + width: fit-content; + width: -moz-fit-content; + align-items: center; + user-select: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + cursor: pointer; +} +.tsd-filter-input input[type="checkbox"] { + cursor: pointer; + position: absolute; + width: 1.5em; + height: 1.5em; + opacity: 0; +} +.tsd-filter-input input[type="checkbox"]:disabled { + pointer-events: none; +} +.tsd-filter-input svg { + cursor: pointer; + width: 1.5em; + height: 1.5em; + margin-right: 0.5em; + border-radius: 0.33em; + /* Leaving this at full opacity breaks event listeners on Firefox. + Don't remove unless you know what you're doing. */ + opacity: 0.99; +} +.tsd-filter-input input[type="checkbox"]:focus + svg { + transform: scale(0.95); +} +.tsd-filter-input input[type="checkbox"]:focus:not(:focus-visible) + svg { + transform: scale(1); +} +.tsd-checkbox-background { + fill: var(--color-accent); +} +input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { + stroke: var(--color-text); +} +.tsd-filter-input input:disabled ~ svg > .tsd-checkbox-background { + fill: var(--color-background); + stroke: var(--color-accent); + stroke-width: 0.25rem; +} +.tsd-filter-input input:disabled ~ svg > .tsd-checkbox-checkmark { + stroke: var(--color-accent); +} + +.tsd-theme-toggle { + padding-top: 0.75rem; +} +.tsd-theme-toggle > h4 { + display: inline; + vertical-align: middle; + margin-right: 0.75rem; +} + +.tsd-hierarchy { + list-style: square; + margin: 0; +} +.tsd-hierarchy .target { + font-weight: bold; +} + +.tsd-panel-group.tsd-index-group { + margin-bottom: 0; +} +.tsd-index-panel .tsd-index-list { + list-style: none; + line-height: 1.333em; + margin: 0; + padding: 0.25rem 0 0 0; + overflow: hidden; + display: grid; + grid-template-columns: repeat(3, 1fr); + column-gap: 1rem; + grid-template-rows: auto; +} +@media (max-width: 1024px) { + .tsd-index-panel .tsd-index-list { + grid-template-columns: repeat(2, 1fr); + } +} +@media (max-width: 768px) { + .tsd-index-panel .tsd-index-list { + grid-template-columns: repeat(1, 1fr); + } +} +.tsd-index-panel .tsd-index-list li { + -webkit-page-break-inside: avoid; + -moz-page-break-inside: avoid; + -ms-page-break-inside: avoid; + -o-page-break-inside: avoid; + page-break-inside: avoid; +} + +.tsd-flag { + display: inline-block; + padding: 0.25em 0.4em; + border-radius: 4px; + color: var(--color-comment-tag-text); + background-color: var(--color-comment-tag); + text-indent: 0; + font-size: 75%; + line-height: 1; + font-weight: normal; +} + +.tsd-anchor { + position: relative; + top: -100px; +} + +.tsd-member { + position: relative; +} +.tsd-member .tsd-anchor + h3 { + display: flex; + align-items: center; + margin-top: 0; + margin-bottom: 0; + border-bottom: none; +} + +.tsd-navigation.settings { + margin: 1rem 0; +} +.tsd-navigation > a, +.tsd-navigation .tsd-accordion-summary { + width: calc(100% - 0.5rem); +} +.tsd-navigation a, +.tsd-navigation summary > span, +.tsd-page-navigation a { + display: inline-flex; + align-items: center; + padding: 0.25rem; + color: var(--color-text); + text-decoration: none; + box-sizing: border-box; +} +.tsd-navigation a.current, +.tsd-page-navigation a.current { + background: var(--color-active-menu-item); +} +.tsd-navigation a:hover, +.tsd-page-navigation a:hover { + text-decoration: underline; +} +.tsd-navigation ul, +.tsd-page-navigation ul { + margin-top: 0; + margin-bottom: 0; + padding: 0; + list-style: none; +} +.tsd-navigation li, +.tsd-page-navigation li { + padding: 0; + max-width: 100%; +} +.tsd-nested-navigation { + margin-left: 3rem; +} +.tsd-nested-navigation > li > details { + margin-left: -1.5rem; +} +.tsd-small-nested-navigation { + margin-left: 1.5rem; +} +.tsd-small-nested-navigation > li > details { + margin-left: -1.5rem; +} + +.tsd-nested-navigation > li > a, +.tsd-nested-navigation > li > span { + width: calc(100% - 1.75rem - 0.5rem); +} + +.tsd-page-navigation ul { + padding-left: 1.75rem; +} + +#tsd-sidebar-links a { + margin-top: 0; + margin-bottom: 0.5rem; + line-height: 1.25rem; +} +#tsd-sidebar-links a:last-of-type { + margin-bottom: 0; +} + +a.tsd-index-link { + padding: 0.25rem 0 !important; + font-size: 1rem; + line-height: 1.25rem; + display: inline-flex; + align-items: center; + color: var(--color-text); +} +.tsd-accordion-summary { + list-style-type: none; /* hide marker on non-safari */ + outline: none; /* broken on safari, so just hide it */ +} +.tsd-accordion-summary::-webkit-details-marker { + display: none; /* hide marker on safari */ +} +.tsd-accordion-summary, +.tsd-accordion-summary a { + user-select: none; + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + + cursor: pointer; +} +.tsd-accordion-summary a { + width: calc(100% - 1.5rem); +} +.tsd-accordion-summary > * { + margin-top: 0; + margin-bottom: 0; + padding-top: 0; + padding-bottom: 0; +} +.tsd-index-accordion .tsd-accordion-summary > svg { + margin-left: 0.25rem; +} +.tsd-index-content > :not(:first-child) { + margin-top: 0.75rem; +} +.tsd-index-heading { + margin-top: 1.5rem; + margin-bottom: 0.75rem; +} + +.tsd-kind-icon { + margin-right: 0.5rem; + width: 1.25rem; + height: 1.25rem; + min-width: 1.25rem; + min-height: 1.25rem; +} +.tsd-kind-icon path { + transform-origin: center; + transform: scale(1.1); +} +.tsd-signature > .tsd-kind-icon { + margin-right: 0.8rem; +} + +.tsd-panel { + margin-bottom: 2.5rem; +} +.tsd-panel.tsd-member { + margin-bottom: 4rem; +} +.tsd-panel:empty { + display: none; +} +.tsd-panel > h1, +.tsd-panel > h2, +.tsd-panel > h3 { + margin: 1.5rem -1.5rem 0.75rem -1.5rem; + padding: 0 1.5rem 0.75rem 1.5rem; +} +.tsd-panel > h1.tsd-before-signature, +.tsd-panel > h2.tsd-before-signature, +.tsd-panel > h3.tsd-before-signature { + margin-bottom: 0; + border-bottom: none; +} + +.tsd-panel-group { + margin: 4rem 0; +} +.tsd-panel-group.tsd-index-group { + margin: 2rem 0; +} +.tsd-panel-group.tsd-index-group details { + margin: 2rem 0; +} + +#tsd-search { + transition: background-color 0.2s; +} +#tsd-search .title { + position: relative; + z-index: 2; +} +#tsd-search .field { + position: absolute; + left: 0; + top: 0; + right: 2.5rem; + height: 100%; +} +#tsd-search .field input { + box-sizing: border-box; + position: relative; + top: -50px; + z-index: 1; + width: 100%; + padding: 0 10px; + opacity: 0; + outline: 0; + border: 0; + background: transparent; + color: var(--color-text); +} +#tsd-search .field label { + position: absolute; + overflow: hidden; + right: -40px; +} +#tsd-search .field input, +#tsd-search .title, +#tsd-toolbar-links a { + transition: opacity 0.2s; +} +#tsd-search .results { + position: absolute; + visibility: hidden; + top: 40px; + width: 100%; + margin: 0; + padding: 0; + list-style: none; + box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); +} +#tsd-search .results li { + padding: 0 10px; + background-color: var(--color-background); +} +#tsd-search .results li:nth-child(even) { + background-color: var(--color-background-secondary); +} +#tsd-search .results li.state { + display: none; +} +#tsd-search .results li.current, +#tsd-search .results li:hover { + background-color: var(--color-accent); +} +#tsd-search .results a { + display: block; +} +#tsd-search .results a:before { + top: 10px; +} +#tsd-search .results span.parent { + color: var(--color-text-aside); + font-weight: normal; +} +#tsd-search.has-focus { + background-color: var(--color-accent); +} +#tsd-search.has-focus .field input { + top: 0; + opacity: 1; +} +#tsd-search.has-focus .title, +#tsd-search.has-focus #tsd-toolbar-links a { + z-index: 0; + opacity: 0; +} +#tsd-search.has-focus .results { + visibility: visible; +} +#tsd-search.loading .results li.state.loading { + display: block; +} +#tsd-search.failure .results li.state.failure { + display: block; +} + +#tsd-toolbar-links { + position: absolute; + top: 0; + right: 2rem; + height: 100%; + display: flex; + align-items: center; + justify-content: flex-end; +} +#tsd-toolbar-links a { + margin-left: 1.5rem; +} +#tsd-toolbar-links a:hover { + text-decoration: underline; +} + +.tsd-signature { + margin: 0 0 1rem 0; + padding: 1rem 0.5rem; + border: 1px solid var(--color-accent); + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + font-size: 14px; + overflow-x: auto; +} + +.tsd-signature-symbol { + color: var(--color-text-aside); + font-weight: normal; +} + +.tsd-signature-type { + font-style: italic; + font-weight: normal; +} + +.tsd-signatures { + padding: 0; + margin: 0 0 1em 0; + list-style-type: none; +} +.tsd-signatures .tsd-signature { + margin: 0; + border-color: var(--color-accent); + border-width: 1px 0; + transition: background-color 0.1s; +} +.tsd-description .tsd-signatures .tsd-signature { + border-width: 1px; +} + +ul.tsd-parameter-list, +ul.tsd-type-parameter-list { + list-style: square; + margin: 0; + padding-left: 20px; +} +ul.tsd-parameter-list > li.tsd-parameter-signature, +ul.tsd-type-parameter-list > li.tsd-parameter-signature { + list-style: none; + margin-left: -20px; +} +ul.tsd-parameter-list h5, +ul.tsd-type-parameter-list h5 { + font-size: 16px; + margin: 1em 0 0.5em 0; +} +.tsd-sources { + margin-top: 1rem; + font-size: 0.875em; +} +.tsd-sources a { + color: var(--color-text-aside); + text-decoration: underline; +} +.tsd-sources ul { + list-style: none; + padding: 0; +} + +.tsd-page-toolbar { + position: sticky; + z-index: 1; + top: 0; + left: 0; + width: 100%; + color: var(--color-text); + background: var(--color-background-secondary); + border-bottom: 1px var(--color-accent) solid; + transition: transform 0.3s ease-in-out; +} +.tsd-page-toolbar a { + color: var(--color-text); + text-decoration: none; +} +.tsd-page-toolbar a.title { + font-weight: bold; +} +.tsd-page-toolbar a.title:hover { + text-decoration: underline; +} +.tsd-page-toolbar .tsd-toolbar-contents { + display: flex; + justify-content: space-between; + height: 2.5rem; + margin: 0 auto; +} +.tsd-page-toolbar .table-cell { + position: relative; + white-space: nowrap; + line-height: 40px; +} +.tsd-page-toolbar .table-cell:first-child { + width: 100%; +} +.tsd-page-toolbar .tsd-toolbar-icon { + box-sizing: border-box; + line-height: 0; + padding: 12px 0; +} + +.tsd-widget { + display: inline-block; + overflow: hidden; + opacity: 0.8; + height: 40px; + transition: opacity 0.1s, background-color 0.2s; + vertical-align: bottom; + cursor: pointer; +} +.tsd-widget:hover { + opacity: 0.9; +} +.tsd-widget.active { + opacity: 1; + background-color: var(--color-accent); +} +.tsd-widget.no-caption { + width: 40px; +} +.tsd-widget.no-caption:before { + margin: 0; +} + +.tsd-widget.options, +.tsd-widget.menu { + display: none; +} +input[type="checkbox"] + .tsd-widget:before { + background-position: -120px 0; +} +input[type="checkbox"]:checked + .tsd-widget:before { + background-position: -160px 0; +} + +img { + max-width: 100%; +} + +.tsd-anchor-icon { + display: inline-flex; + align-items: center; + margin-left: 0.5rem; + vertical-align: middle; + color: var(--color-text); +} + +.tsd-anchor-icon svg { + width: 1em; + height: 1em; + visibility: hidden; +} + +.tsd-anchor-link:hover > .tsd-anchor-icon svg { + visibility: visible; +} + +.deprecated { + text-decoration: line-through; +} + +.warning { + padding: 1rem; + color: var(--color-warning-text); + background: var(--color-background-warning); +} + +.tsd-kind-project { + color: var(--color-ts-project); +} +.tsd-kind-module { + color: var(--color-ts-module); +} +.tsd-kind-namespace { + color: var(--color-ts-namespace); +} +.tsd-kind-enum { + color: var(--color-ts-enum); +} +.tsd-kind-enum-member { + color: var(--color-ts-enum-member); +} +.tsd-kind-variable { + color: var(--color-ts-variable); +} +.tsd-kind-function { + color: var(--color-ts-function); +} +.tsd-kind-class { + color: var(--color-ts-class); +} +.tsd-kind-interface { + color: var(--color-ts-interface); +} +.tsd-kind-constructor { + color: var(--color-ts-constructor); +} +.tsd-kind-property { + color: var(--color-ts-property); +} +.tsd-kind-method { + color: var(--color-ts-method); +} +.tsd-kind-call-signature { + color: var(--color-ts-call-signature); +} +.tsd-kind-index-signature { + color: var(--color-ts-index-signature); +} +.tsd-kind-constructor-signature { + color: var(--color-ts-constructor-signature); +} +.tsd-kind-parameter { + color: var(--color-ts-parameter); +} +.tsd-kind-type-literal { + color: var(--color-ts-type-literal); +} +.tsd-kind-type-parameter { + color: var(--color-ts-type-parameter); +} +.tsd-kind-accessor { + color: var(--color-ts-accessor); +} +.tsd-kind-get-signature { + color: var(--color-ts-get-signature); +} +.tsd-kind-set-signature { + color: var(--color-ts-set-signature); +} +.tsd-kind-type-alias { + color: var(--color-ts-type-alias); +} + +/* if we have a kind icon, don't color the text by kind */ +.tsd-kind-icon ~ span { + color: var(--color-text); +} + +* { + scrollbar-width: thin; + scrollbar-color: var(--color-accent) var(--color-icon-background); +} + +*::-webkit-scrollbar { + width: 0.75rem; +} + +*::-webkit-scrollbar-track { + background: var(--color-icon-background); +} + +*::-webkit-scrollbar-thumb { + background-color: var(--color-accent); + border-radius: 999rem; + border: 0.25rem solid var(--color-icon-background); +} + +/* mobile */ +@media (max-width: 769px) { + .tsd-widget.options, + .tsd-widget.menu { + display: inline-block; + } + + .container-main { + display: flex; + } + html .col-content { + float: none; + max-width: 100%; + width: 100%; + } + html .col-sidebar { + position: fixed !important; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + z-index: 1024; + top: 0 !important; + bottom: 0 !important; + left: auto !important; + right: 0 !important; + padding: 1.5rem 1.5rem 0 0; + width: 75vw; + visibility: hidden; + background-color: var(--color-background); + transform: translate(100%, 0); + } + html .col-sidebar > *:last-child { + padding-bottom: 20px; + } + html .overlay { + content: ""; + display: block; + position: fixed; + z-index: 1023; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: rgba(0, 0, 0, 0.75); + visibility: hidden; + } + + .to-has-menu .overlay { + animation: fade-in 0.4s; + } + + .to-has-menu .col-sidebar { + animation: pop-in-from-right 0.4s; + } + + .from-has-menu .overlay { + animation: fade-out 0.4s; + } + + .from-has-menu .col-sidebar { + animation: pop-out-to-right 0.4s; + } + + .has-menu body { + overflow: hidden; + } + .has-menu .overlay { + visibility: visible; + } + .has-menu .col-sidebar { + visibility: visible; + transform: translate(0, 0); + display: flex; + flex-direction: column; + gap: 1.5rem; + max-height: 100vh; + padding: 1rem 2rem; + } + .has-menu .tsd-navigation { + max-height: 100%; + } +} + +/* one sidebar */ +@media (min-width: 770px) { + .container-main { + display: grid; + grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); + grid-template-areas: "sidebar content"; + margin: 2rem auto; + } + + .col-sidebar { + grid-area: sidebar; + } + .col-content { + grid-area: content; + padding: 0 1rem; + } +} +@media (min-width: 770px) and (max-width: 1399px) { + .col-sidebar { + max-height: calc(100vh - 2rem - 42px); + overflow: auto; + position: sticky; + top: 42px; + padding-top: 1rem; + } + .site-menu { + margin-top: 1rem; + } +} + +/* two sidebars */ +@media (min-width: 1200px) { + .container-main { + grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr) minmax(0, 20rem); + grid-template-areas: "sidebar content toc"; + } + + .col-sidebar { + display: contents; + } + + .page-menu { + grid-area: toc; + padding-left: 1rem; + } + .site-menu { + grid-area: sidebar; + } + + .site-menu { + margin-top: 1rem 0; + } + + .page-menu, + .site-menu { + max-height: calc(100vh - 2rem - 42px); + overflow: auto; + position: sticky; + top: 42px; + } +} diff --git a/docs/0.17.2/classes/Gondi.html b/docs/0.17.2/classes/Gondi.html new file mode 100644 index 00000000..7a393fb3 --- /dev/null +++ b/docs/0.17.2/classes/Gondi.html @@ -0,0 +1,1249 @@ +Gondi | Gondi JS SDK - v0.17.2
+
+ +
+
+
+
+ +

Class Gondi

+
+

Hierarchy

+
    +
  • Gondi
+
+
+
+ +
+
+

Constructors

+
+ +
+
+

Methods

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        aprBps: bigint;
        borrowerAddress: `0x${string}`;
        capacity: bigint;
        contractAddress: `0x${string}`;
        duration: bigint;
        expirationTime: bigint;
        fee: bigint;
        lenderAddress: `0x${string}`;
        maxSeniorRepayment?: InputMaybe<bigint>;
        maxTrancheFloor?: InputMaybe<bigint>;
        nftId: number;
        offerHash: `0x${string}`;
        offerId: bigint;
        offerValidators: OfferValidatorInput[];
        principalAddress: `0x${string}`;
        principalAmount: bigint;
        requiresLiquidation?: InputMaybe<boolean>;
        signature: `0x${string}`;
        signerAddress?: InputMaybe<`0x${string}`>;
        id: string;
        nftCollateralAddress: `0x${string}`;
        nftCollateralTokenId: bigint;
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        aprBps: bigint;
        borrowerAddress: `0x${string}`;
        capacity: bigint;
        collectionId: number;
        contractAddress: `0x${string}`;
        duration: bigint;
        expirationTime: bigint;
        fee: bigint;
        lenderAddress: `0x${string}`;
        maxSeniorRepayment?: InputMaybe<bigint>;
        maxTrancheFloor?: InputMaybe<bigint>;
        offerHash: `0x${string}`;
        offerId: bigint;
        offerValidators: OfferValidatorInput[];
        principalAddress: `0x${string}`;
        principalAmount: bigint;
        requiresLiquidation?: InputMaybe<boolean>;
        signature: `0x${string}`;
        signerAddress?: InputMaybe<`0x${string}`>;
        id: string;
        nftCollateralAddress: `0x${string}`;
        nftCollateralTokenId: bigint;
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        amount: bigint;
        contractAddress: `0x${string}`;
        currencyAddress: `0x${string}`;
        expirationTime: bigint;
        isAsk: boolean;
        repaymentSignature?: InputMaybe<`0x${string}`>;
        replaceOrderId?: InputMaybe<number>;
        signature: InputMaybe<`0x${string}`>;
        startTime: bigint;
        taker?: InputMaybe<`0x${string}`>;
        tokenId: bigint;
        __typename?: "SellAndRepayOrder";
        id: string;
        status: string;
        repaymentCalldata: `0x${string}`;
        cancelCalldata: `0x${string}`;
        marketPlaceAddress: `0x${string}`;
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<TransactionReceipt>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          id: bigint;
          contractAddress: `0x${string}`;
      }
      +
        +
      • +
        id: bigint
      • +
      • +
        contractAddress: `0x${string}`
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            lender: `0x${string}`;
            offerId: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          minId: bigint;
          contractAddress: `0x${string}`;
      }
      +
        +
      • +
        minId: bigint
      • +
      • +
        contractAddress: `0x${string}`
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            lender: `0x${string}`;
            minOfferId: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          id: bigint;
          contractAddress: `0x${string}`;
      }
      +
        +
      • +
        id: bigint
      • +
      • +
        contractAddress: `0x${string}`
    +

    Returns Promise<HideOfferMutation>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          id: bigint;
          contractAddress: `0x${string}`;
      }
      +
        +
      • +
        id: bigint
      • +
      • +
        contractAddress: `0x${string}`
    +

    Returns Promise<UnhideOfferMutation>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        id: string;
        loanId: string;
        duration: bigint;
        principalAmount: bigint;
        renegotiationId: bigint;
        requiresLiquidation?: InputMaybe<boolean>;
        aprBps: bigint;
        expirationTime: bigint;
        targetPrincipal?: InputMaybe<bigint[]>;
        strictImprovement?: InputMaybe<boolean>;
        trancheIndex?: InputMaybe<bigint[]>;
        lenderAddress: `0x${string}`;
        signerAddress?: InputMaybe<`0x${string}`>;
        offerHash: `0x${string}`;
        feeAmount: bigint;
        isAddNewTranche?: InputMaybe<boolean>;
        signature: `0x${string}`;
    } | {
        offerHash: `0x${string}`;
        signature: `0x${string}`;
        renegotiationId: bigint;
        targetPrincipal: bigint[];
        trancheIndex: bigint[];
        lenderAddress: `0x${string}`;
        signerAddress: InputMaybe<`0x${string}`>;
        loanId: string;
        duration: bigint;
        principalAmount: bigint;
        requiresLiquidation?: InputMaybe<boolean>;
        aprBps: bigint;
        expirationTime: bigint;
        strictImprovement?: InputMaybe<boolean>;
        feeAmount: bigint;
        isAddNewTranche?: InputMaybe<boolean>;
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          id: bigint;
          contractAddress: `0x${string}`;
      }
      +
        +
      • +
        id: bigint
      • +
      • +
        contractAddress: `0x${string}`
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            lender: `0x${string}`;
            renegotiationId: bigint;
        }>);
    }>

+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          minId: bigint;
          contractAddress: `0x${string}`;
      }
      +
        +
      • +
        minId: bigint
      • +
      • +
        contractAddress: `0x${string}`
    +

    Returns Promise<void | {
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            lender: `0x${string}`;
            minRenegotiationId: bigint;
        }>);
    }>

+
+ +
+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                source: readonly {
                    loanId: bigint;
                    lender: `0x${string}`;
                    principalAmount: bigint;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                id: string;
            };
            loanId: bigint;
            offerId: string;
        }>);
    } | {
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                tranche: readonly {
                    loanId: bigint;
                    floor: bigint;
                    principalAmount: bigint;
                    lender: `0x${string}`;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                protocolFee: bigint;
                id: string;
            };
            loanId: bigint;
            offerIds: string[];
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                tranche: readonly {
                    loanId: bigint;
                    floor: bigint;
                    principalAmount: bigint;
                    lender: `0x${string}`;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                protocolFee: bigint;
                id: string;
            };
            loanId: bigint;
            offerIds: string[];
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          loan: LoanToMslLoanType;
          loanId: bigint;
          nftReceiver?: `0x${string}`;
      }
      +
        +
      • +
        loan: LoanToMslLoanType
      • +
      • +
        loanId: bigint
      • +
      • +
        Optional nftReceiver?: `0x${string}`
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loanId: bigint;
            totalRepayment: bigint;
            fee: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        offers: ({
            type: undefined | "CollectionOffer" | "SingleNFTOffer";
            lender: undefined | null | `0x${string}`;
            borrower: undefined | null | `0x${string}`;
            signer: undefined | null | `0x${string}`;
            offerValidators: {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[] | {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[];
            nftCollateralAddress: `0x${string}`;
            nftCollateralTokenId: bigint;
            id: string;
            offerId: bigint;
            lenderAddress?: null | `0x${string}`;
            borrowerAddress?: null | `0x${string}`;
            signerAddress?: null | `0x${string}`;
            contractAddress: `0x${string}`;
            requiresLiquidation?: null | boolean;
            principalAddress: `0x${string}`;
            principalAmount: bigint;
            aprBps: bigint;
            fee: bigint;
            capacity: bigint;
            expirationTime: bigint;
            duration: bigint;
            status: string;
            offerHash?: null | `0x${string}`;
            signature?: null | `0x${string}`;
            createdDate?: null | Date;
            repayment: bigint;
            hidden?: null | boolean;
            maxSeniorRepayment: bigint;
            collection: {
                __typename?: "Collection";
                id: string;
                slug: string;
                contractData: {
                    __typename?: "ContractData";
                    contractAddress: `0x${string}`;
                };
            };
            currency: {
                __typename?: "Currency";
                symbol: string;
                decimals: number;
                address: `0x${string}`;
            };
            validators: {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[];
        } | {
            type: undefined | "CollectionOffer" | "SingleNFTOffer";
            lender: undefined | null | `0x${string}`;
            borrower: undefined | null | `0x${string}`;
            signer: undefined | null | `0x${string}`;
            offerValidators: {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[] | {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[];
            nftCollateralAddress: `0x${string}`;
            nftCollateralTokenId: bigint;
            id: string;
            offerId: bigint;
            lenderAddress?: null | `0x${string}`;
            borrowerAddress?: null | `0x${string}`;
            signerAddress?: null | `0x${string}`;
            contractAddress: `0x${string}`;
            requiresLiquidation?: null | boolean;
            principalAddress: `0x${string}`;
            principalAmount: bigint;
            aprBps: bigint;
            fee: bigint;
            capacity: bigint;
            expirationTime: bigint;
            duration: bigint;
            status: string;
            offerHash?: null | `0x${string}`;
            signature?: null | `0x${string}`;
            createdDate?: null | Date;
            repayment: bigint;
            hidden?: null | boolean;
            maxSeniorRepayment: bigint;
            nft: {
                __typename?: "NFT";
                id: string;
                tokenId: bigint;
                collection?: null | {
                    __typename?: "Collection";
                    id: string;
                    slug: string;
                    contractData: {
                        __typename?: "ContractData";
                        contractAddress: `0x${string}`;
                    };
                };
            };
            currency: {
                __typename?: "Currency";
                symbol: string;
                decimals: number;
                address: `0x${string}`;
            };
            validators: {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[];
        })[];
        hasNextPage: true;
        cursor: string;
    } | {
        offers: ({
            type: undefined | "CollectionOffer" | "SingleNFTOffer";
            lender: undefined | null | `0x${string}`;
            borrower: undefined | null | `0x${string}`;
            signer: undefined | null | `0x${string}`;
            offerValidators: {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[] | {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[];
            nftCollateralAddress: `0x${string}`;
            nftCollateralTokenId: bigint;
            id: string;
            offerId: bigint;
            lenderAddress?: null | `0x${string}`;
            borrowerAddress?: null | `0x${string}`;
            signerAddress?: null | `0x${string}`;
            contractAddress: `0x${string}`;
            requiresLiquidation?: null | boolean;
            principalAddress: `0x${string}`;
            principalAmount: bigint;
            aprBps: bigint;
            fee: bigint;
            capacity: bigint;
            expirationTime: bigint;
            duration: bigint;
            status: string;
            offerHash?: null | `0x${string}`;
            signature?: null | `0x${string}`;
            createdDate?: null | Date;
            repayment: bigint;
            hidden?: null | boolean;
            maxSeniorRepayment: bigint;
            collection: {
                __typename?: "Collection";
                id: string;
                slug: string;
                contractData: {
                    __typename?: "ContractData";
                    contractAddress: `0x${string}`;
                };
            };
            currency: {
                __typename?: "Currency";
                symbol: string;
                decimals: number;
                address: `0x${string}`;
            };
            validators: {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[];
        } | {
            type: undefined | "CollectionOffer" | "SingleNFTOffer";
            lender: undefined | null | `0x${string}`;
            borrower: undefined | null | `0x${string}`;
            signer: undefined | null | `0x${string}`;
            offerValidators: {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[] | {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[];
            nftCollateralAddress: `0x${string}`;
            nftCollateralTokenId: bigint;
            id: string;
            offerId: bigint;
            lenderAddress?: null | `0x${string}`;
            borrowerAddress?: null | `0x${string}`;
            signerAddress?: null | `0x${string}`;
            contractAddress: `0x${string}`;
            requiresLiquidation?: null | boolean;
            principalAddress: `0x${string}`;
            principalAmount: bigint;
            aprBps: bigint;
            fee: bigint;
            capacity: bigint;
            expirationTime: bigint;
            duration: bigint;
            status: string;
            offerHash?: null | `0x${string}`;
            signature?: null | `0x${string}`;
            createdDate?: null | Date;
            repayment: bigint;
            hidden?: null | boolean;
            maxSeniorRepayment: bigint;
            nft: {
                __typename?: "NFT";
                id: string;
                tokenId: bigint;
                collection?: null | {
                    __typename?: "Collection";
                    id: string;
                    slug: string;
                    contractData: {
                        __typename?: "ContractData";
                        contractAddress: `0x${string}`;
                    };
                };
            };
            currency: {
                __typename?: "Currency";
                symbol: string;
                decimals: number;
                address: `0x${string}`;
            };
            validators: {
                __typename?: "OfferValidator";
                arguments: `0x${string}`;
                validator: `0x${string}`;
            }[];
        })[];
        hasNextPage: false;
        cursor: null;
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        loans: {
            type: undefined | "MultiSourceLoan";
            contractAddress: `0x${string}`;
            nftCollateralTokenId: bigint;
            nftCollateralAddress: undefined | `0x${string}`;
            borrower: `0x${string}`;
            startTime: bigint;
            source: {
                lender: `0x${string}`;
                loanId: bigint;
                startTime: bigint;
                __typename?: "Source";
                id: string;
                originationFee: bigint;
                principalAmount: bigint;
                lenderAddress: string;
                accruedInterest: bigint;
                aprBps: bigint;
            }[];
            id: string;
            address: `0x${string}`;
            loanId: number;
            timestamp: Date;
            txHash: `0x${string}`;
            indexInBlock: number;
            borrowerAddress: `0x${string}`;
            principalAddress: `0x${string}`;
            duration: bigint;
            status: string;
            principalAmount: bigint;
            blendedAprBps: number;
            totalOriginationFee: bigint;
            protocolFee: bigint;
            offer: {
                __typename?: "CollectionOffer";
                offerId: bigint;
                signerAddress?: null | `0x${string}`;
            } | {
                __typename?: "SingleNFTOffer";
                offerId: bigint;
                signerAddress?: null | `0x${string}`;
            };
            currency: {
                __typename?: "Currency";
                symbol: string;
                decimals: number;
                address: `0x${string}`;
            };
            repaidActivity?: null | {
                __typename?: "LoanRepaid";
                totalInterest: bigint;
                timestamp: Date;
            };
            nft: {
                __typename?: "NFT";
                id: string;
                name?: null | string;
                tokenId: bigint;
                nftId: string;
                owner?: null | `0x${string}`;
                image?: null | {
                    __typename?: "Asset";
                    data: string;
                    cacheUrl?: null | string;
                    contentTypeMime: string;
                    accessTypeName: string;
                };
                collection?: null | {
                    __typename?: "Collection";
                    id: string;
                    slug: string;
                    name?: null | string;
                    nftsCount?: null | number;
                    contractData: {
                        __typename?: "ContractData";
                        contractAddress: `0x${string}`;
                    };
                };
            };
            sources: {
                __typename?: "Source";
                id: string;
                loanId: string;
                originationFee: bigint;
                principalAmount: bigint;
                lenderAddress: string;
                accruedInterest: bigint;
                aprBps: bigint;
                startTime: Date;
            }[];
        }[];
        hasNextPage: true;
        cursor: string;
    } | {
        loans: {
            type: undefined | "MultiSourceLoan";
            contractAddress: `0x${string}`;
            nftCollateralTokenId: bigint;
            nftCollateralAddress: undefined | `0x${string}`;
            borrower: `0x${string}`;
            startTime: bigint;
            source: {
                lender: `0x${string}`;
                loanId: bigint;
                startTime: bigint;
                __typename?: "Source";
                id: string;
                originationFee: bigint;
                principalAmount: bigint;
                lenderAddress: string;
                accruedInterest: bigint;
                aprBps: bigint;
            }[];
            id: string;
            address: `0x${string}`;
            loanId: number;
            timestamp: Date;
            txHash: `0x${string}`;
            indexInBlock: number;
            borrowerAddress: `0x${string}`;
            principalAddress: `0x${string}`;
            duration: bigint;
            status: string;
            principalAmount: bigint;
            blendedAprBps: number;
            totalOriginationFee: bigint;
            protocolFee: bigint;
            offer: {
                __typename?: "CollectionOffer";
                offerId: bigint;
                signerAddress?: null | `0x${string}`;
            } | {
                __typename?: "SingleNFTOffer";
                offerId: bigint;
                signerAddress?: null | `0x${string}`;
            };
            currency: {
                __typename?: "Currency";
                symbol: string;
                decimals: number;
                address: `0x${string}`;
            };
            repaidActivity?: null | {
                __typename?: "LoanRepaid";
                totalInterest: bigint;
                timestamp: Date;
            };
            nft: {
                __typename?: "NFT";
                id: string;
                name?: null | string;
                tokenId: bigint;
                nftId: string;
                owner?: null | `0x${string}`;
                image?: null | {
                    __typename?: "Asset";
                    data: string;
                    cacheUrl?: null | string;
                    contentTypeMime: string;
                    accessTypeName: string;
                };
                collection?: null | {
                    __typename?: "Collection";
                    id: string;
                    slug: string;
                    name?: null | string;
                    nftsCount?: null | number;
                    contractData: {
                        __typename?: "ContractData";
                        contractAddress: `0x${string}`;
                    };
                };
            };
            sources: {
                __typename?: "Source";
                id: string;
                loanId: string;
                originationFee: bigint;
                principalAmount: bigint;
                lenderAddress: string;
                accruedInterest: bigint;
                aprBps: bigint;
                startTime: Date;
            }[];
        }[];
        hasNextPage: false;
        cursor: null;
    }>

+
+ +
+
+ +
+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        listings: {
            __typename?: "Listing";
            id: string;
            marketplaceName: MarketplaceEnum;
            createdDate: Date;
            desiredDuration?: null | number;
            desiredPrincipalAddress?: null | `0x${string}`;
            user: {
                __typename?: "User";
                walletAddress: `0x${string}`;
            };
            nft: {
                __typename?: "NFT";
                id: string;
                tokenId: bigint;
                collection?: null | {
                    __typename?: "Collection";
                    id: string;
                    slug: string;
                    contractData: {
                        __typename?: "ContractData";
                        contractAddress: `0x${string}`;
                    };
                };
            };
        }[];
        hasNextPage: true;
        cursor: string;
    } | {
        listings: {
            __typename?: "Listing";
            id: string;
            marketplaceName: MarketplaceEnum;
            createdDate: Date;
            desiredDuration?: null | number;
            desiredPrincipalAddress?: null | `0x${string}`;
            user: {
                __typename?: "User";
                walletAddress: `0x${string}`;
            };
            nft: {
                __typename?: "NFT";
                id: string;
                tokenId: bigint;
                collection?: null | {
                    __typename?: "Collection";
                    id: string;
                    slug: string;
                    contractData: {
                        __typename?: "ContractData";
                        contractAddress: `0x${string}`;
                    };
                };
            };
        }[];
        hasNextPage: false;
        cursor: null;
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      props: Object
    +

    Returns Promise<number>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      props: {
          statsCurrency?: `0x${string}`;
          standards?: TokenStandardType[];
          collections?: number[];
          cursor?: string;
      }
      +
        +
      • +
        Optional statsCurrency?: `0x${string}`
      • +
      • +
        Optional standards?: TokenStandardType[]
      • +
      • +
        Optional collections?: number[]
      • +
      • +
        Optional cursor?: string
    +

    Returns Promise<{
        collections: {
            __typename?: "Collection";
            id: string;
            name?: null | string;
            slug: string;
            description?: null | string;
            discordUrl?: null | string;
            twitterUsername?: null | string;
            externalUrl?: null | string;
            collectionUrl?: null | string;
            verified: boolean;
            wrapperCollections: {
                __typename?: "Collection";
                contractData: {
                    __typename?: "ContractData";
                    contractAddress: `0x${string}`;
                };
            }[];
            image?: null | {
                __typename?: "Asset";
                cacheUrl?: null | string;
            };
            bannerImage?: null | {
                __typename?: "Asset";
                cacheUrl?: null | string;
            };
            contractData: {
                __typename?: "ContractData";
                blockchain: string;
                contractAddress: `0x${string}`;
                createdDate: Date;
                creatorAddress?: null | `0x${string}`;
            };
            statistics: {
                __typename?: "CollectionStatistics";
                floorPrice7d?: null | number;
                floorPrice30d?: null | number;
                totalVolume?: null | number;
                totalVolume1y?: null | number;
                totalVolume3m?: null | number;
                totalVolume1m?: null | number;
                totalVolume1w?: null | number;
                totalLoanVolume: bigint;
                totalLoanVolume1w: bigint;
                totalLoanVolume1m: bigint;
                totalLoanVolume3m: bigint;
                totalLoanVolume1y: bigint;
                numberOfPricedNfts: number;
                nftsCount?: null | number;
                percentageInOutstandingLoans: number;
                repaymentRate: number;
                numberOfOffers: number;
                floorPrice?: null | {
                    __typename?: "CurrencyAmount";
                    amount: number;
                    currency: {
                        __typename?: "Currency";
                        address: `0x${string}`;
                        decimals: number;
                    };
                };
                bestOffer?: null | {
                    __typename?: "CurrencyAmount";
                    amount: number;
                    currency: {
                        __typename?: "Currency";
                        address: `0x${string}`;
                        decimals: number;
                    };
                };
            };
        }[];
        pageInfo: {
            __typename?: "PageInfo";
            endCursor?: null | string;
            hasNextPage: boolean;
        };
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      props: {
          slug: string;
          contractAddress?: undefined;
      }
      +
        +
      • +
        slug: string
      • +
      • +
        Optional contractAddress?: undefined
    +

    Returns Promise<number>

  • + +
  • +
    +

    Parameters

    +
      +
    • +
      props: {
          slug?: undefined;
          contractAddress: `0x${string}`;
      }
      +
        +
      • +
        Optional slug?: undefined
      • +
      • +
        contractAddress: `0x${string}`
    +

    Returns Promise<number[]>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        ownedNfts: {
            __typename?: "NFT";
            id: string;
            tokenId: bigint;
            price?: null | bigint;
            priceCurrencyAddress?: null | string;
            collection?: null | {
                __typename?: "Collection";
                id: string;
                contractData: {
                    __typename?: "ContractData";
                    contractAddress: `0x${string}`;
                };
                wrapperCollections: {
                    __typename?: "Collection";
                    contractData: {
                        __typename?: "ContractData";
                        contractAddress: `0x${string}`;
                    };
                }[];
            };
            activeLoan?: null | {
                __typename?: "MultiSourceLoan";
                id: string;
            };
            statistics: {
                __typename?: "NftStatistics";
                lastSale?: null | {
                    __typename?: "Sale";
                    order: {
                        __typename?: "CollectionOrder";
                        price: bigint;
                        currency: {
                            __typename?: "Currency";
                            address: `0x${string}`;
                            decimals: number;
                        };
                    } | {
                        __typename?: "SellAndRepayOrder";
                        price: bigint;
                        currency: {
                            __typename?: "Currency";
                            address: `0x${string}`;
                            decimals: number;
                        };
                    } | {
                        __typename?: "SingleNFTOrder";
                        price: bigint;
                        currency: {
                            __typename?: "Currency";
                            address: `0x${string}`;
                            decimals: number;
                        };
                    };
                };
                topTraitFloorPrice?: null | {
                    __typename?: "CurrencyAmount";
                    amount: number;
                    currency: {
                        __typename?: "Currency";
                        address: `0x${string}`;
                        decimals: number;
                    };
                };
            };
        }[];
        pageInfo: {
            __typename?: "PageInfo";
            endCursor?: null | string;
            hasNextPage: boolean;
        };
    }>

+
+ +
+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          loan: Object;
      }
      +
        +
      • +
        loan: Object
    +

    Returns Promise<boolean>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          aprBpsImprovementPercentage: number;
          refinancings: {
              loan: Object;
              source: {
                  loanId: bigint;
                  floor: bigint;
                  principalAmount: bigint;
                  lender: `0x${string}`;
                  accruedInterest: bigint;
                  startTime: bigint;
                  aprBps: bigint;
              } & {
                  loanIndex: number;
              };
              refinancingPrincipal: bigint;
          }[];
      }
      +
        +
      • +
        aprBpsImprovementPercentage: number
      • +
      • +
        refinancings: {
            loan: Object;
            source: {
                loanId: bigint;
                floor: bigint;
                principalAmount: bigint;
                lender: `0x${string}`;
                accruedInterest: bigint;
                startTime: bigint;
                aprBps: bigint;
            } & {
                loanIndex: number;
            };
            refinancingPrincipal: bigint;
        }[]
    +

    Returns Promise<({
        status: "fulfilled";
        value: {
            txHash: `0x${string}`;
            waitTxInBlock: (() => Promise<{
                results: {
                    renegotiationId: bigint;
                    oldLoanId: bigint;
                    newLoanId: bigint;
                    loan: {
                        borrower: `0x${string}`;
                        nftCollateralTokenId: bigint;
                        nftCollateralAddress: `0x${string}`;
                        principalAddress: `0x${string}`;
                        principalAmount: bigint;
                        startTime: bigint;
                        duration: bigint;
                        source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                    };
                    fee: bigint;
                }[];
            }>);
        } | {
            txHash: `0x${string}`;
            waitTxInBlock: (() => Promise<{
                results: {
                    renegotiationId: bigint;
                    oldLoanId: bigint;
                    newLoanId: bigint;
                    loan: {
                        borrower: `0x${string}`;
                        nftCollateralTokenId: bigint;
                        nftCollateralAddress: `0x${string}`;
                        principalAddress: `0x${string}`;
                        principalAmount: bigint;
                        startTime: bigint;
                        duration: bigint;
                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                        protocolFee: bigint;
                    };
                    fee: bigint;
                }[];
            }>);
        };
        reason: undefined;
    } | {
        status: "rejected";
        reason: unknown;
        value: any[];
    })[]>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                tranche: readonly {
                    loanId: bigint;
                    floor: bigint;
                    principalAmount: bigint;
                    lender: `0x${string}`;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                protocolFee: bigint;
                id: string;
            };
            loanId: bigint;
            renegotiationId: string;
        }>);
    } | {
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                source: readonly {
                    loanId: bigint;
                    lender: `0x${string}`;
                    principalAmount: bigint;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                id: string;
            };
            loanId: bigint;
            renegotiationId: string;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                tranche: readonly {
                    loanId: bigint;
                    floor: bigint;
                    principalAmount: bigint;
                    lender: `0x${string}`;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                protocolFee: bigint;
                id: string;
            };
            loanId: bigint;
            renegotiationId: string;
        }>);
    } | {
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                source: readonly {
                    loanId: bigint;
                    lender: `0x${string}`;
                    principalAmount: bigint;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                id: string;
            };
            loanId: bigint;
            renegotiationId: string;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                tranche: readonly {
                    loanId: bigint;
                    floor: bigint;
                    principalAmount: bigint;
                    lender: `0x${string}`;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                protocolFee: bigint;
                id: string;
            };
            loanId: bigint;
            renegotiationId: string;
        }>);
    }>

+
+ +
    + +
  • +

    Delegate Multicall should be used when token is used as collateral for an active loan. +Multicall will be performed to the contract address of the first delegation.

    +
    +
    +

    Parameters

    +
      +
    • +
      delegations: {
          loan: LoanToMslLoanType;
          loanId: bigint;
          to: `0x${string}`;
          enable: boolean;
          rights?: `0x${string}`;
      }[]
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            results: {
                loanId: bigint;
                delegate: `0x${string}`;
                value: boolean;
            }[];
        }>);
    }>

    +
+
+ +
    + +
  • +

    Delegate should be used when token is used as collateral for an active loan.

    +
    +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          loan: LoanToMslLoanType;
          loanId: bigint;
          to: `0x${string}`;
          enable: boolean;
          rights?: `0x${string}`;
      }
      +
        +
      • +
        loan: LoanToMslLoanType
      • +
      • +
        loanId: bigint
      • +
      • +
        to: `0x${string}`
      • +
      • +
        enable: boolean
      • +
      • +
        Optional rights?: `0x${string}`
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                loanId: bigint;
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint | bigint & Date;
                duration: bigint;
                tranche: readonly {
                    loanId: bigint;
                    floor: bigint;
                    principalAmount: bigint;
                    lender: `0x${string}`;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                protocolFee: bigint;
                contractStartTime: bigint | Date;
            };
            value: boolean;
        }>);
    } | {
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loan: {
                loanId: bigint;
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint | bigint & Date;
                duration: bigint;
                source: readonly {
                    loanId: bigint;
                    lender: `0x${string}`;
                    principalAmount: bigint;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
            };
            value: boolean;
        }>);
    }>

    +
+
+ +
    + +
  • +

    RevokeDelegate should be used when token is not being used as collateral.

    +
    +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          to: `0x${string}`;
          collection: `0x${string}`;
          tokenId: bigint;
          contract?: `0x${string}`;
      }
      +
        +
      • +
        to: `0x${string}`
      • +
      • +
        collection: `0x${string}`
      • +
      • +
        tokenId: bigint
      • +
      • +
        Optional contract?: `0x${string}`
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            delegate: `0x${string}`;
            collection: `0x${string}`;
            tokenId: bigint;
        }>);
    }>

    +
+
+ +
    + +
  • +

    RevokeDelegationsAndEmitLoan should be used when token has been delegated without being revoked, +and a new loan wants to be emitted, erasing the delegations provided as argument.

    +
    +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          delegations: `0x${string}`[];
          emit: EmitLoanArgs;
      }
      +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            results: ({
                loanId: bigint;
                offerId: bigint;
                loan: {
                    borrower: `0x${string}`;
                    nftCollateralTokenId: bigint;
                    nftCollateralAddress: `0x${string}`;
                    principalAddress: `0x${string}`;
                    principalAmount: bigint;
                    startTime: bigint;
                    duration: bigint;
                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                };
                lender: `0x${string}`;
                borrower: `0x${string}`;
                fee: bigint;
            } | {
                delegate: `0x${string}`;
                collection: `0x${string}`;
                tokenId: bigint;
            })[];
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                source: readonly {
                    loanId: bigint;
                    lender: `0x${string}`;
                    principalAmount: bigint;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                id: string;
            };
            loanId: bigint;
        }>);
    } | {
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            results: ({
                loanId: bigint;
                offerId: readonly bigint[];
                loan: {
                    borrower: `0x${string}`;
                    nftCollateralTokenId: bigint;
                    nftCollateralAddress: `0x${string}`;
                    principalAddress: `0x${string}`;
                    principalAmount: bigint;
                    startTime: bigint;
                    duration: bigint;
                    tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                    protocolFee: bigint;
                };
                fee: bigint;
            } | {
                delegate: `0x${string}`;
                collection: `0x${string}`;
                tokenId: bigint;
            })[];
            loan: {
                contractAddress: `0x${string}`;
                borrower: `0x${string}`;
                nftCollateralTokenId: bigint;
                nftCollateralAddress: `0x${string}`;
                principalAddress: `0x${string}`;
                principalAmount: bigint;
                startTime: bigint;
                duration: bigint;
                tranche: readonly {
                    loanId: bigint;
                    floor: bigint;
                    principalAmount: bigint;
                    lender: `0x${string}`;
                    accruedInterest: bigint;
                    startTime: bigint;
                    aprBps: bigint;
                }[];
                protocolFee: bigint;
                id: string;
            };
            loanId: bigint;
        }>);
    }>

    +
+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loanId: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          collectionContractAddress: `0x${string}`;
          tokenId: bigint;
          bid: bigint;
          auction: Auction;
      }
      +
        +
      • +
        collectionContractAddress: `0x${string}`
      • +
      • +
        tokenId: bigint
      • +
      • +
        bid: bigint
      • +
      • +
        auction: Auction
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            auctionContract: `0x${string}`;
            tokenId: bigint;
            newBidder: `0x${string}`;
            bid: bigint;
            loanAddress: `0x${string}`;
            loanId: bigint;
        }>);
    } | {
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            collection: `0x${string}`;
            tokenId: bigint;
            newBidder: `0x${string}`;
            bid: bigint;
            loanAddress: `0x${string}`;
            loanId: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loanContract: `0x${string}`;
            loanId: bigint;
            auctionContract: `0x${string}`;
            tokenId: bigint;
            asset: `0x${string}`;
            proceeds: bigint;
            settler: `0x${string}`;
            triggerFee: bigint;
        }>);
    } | {
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loanContract: `0x${string}`;
            loanId: bigint;
            auctionContract: `0x${string}`;
            tokenId: bigint;
            asset: `0x${string}`;
            highestBid: bigint;
            settler: `0x${string}`;
            triggerFee: bigint;
        }>);
    } | {
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loanContract: `0x${string}`;
            loanId: bigint;
            collection: `0x${string}`;
            tokenId: bigint;
            asset: `0x${string}`;
            proceeds: bigint;
            settler: `0x${string}`;
            triggerFee: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            loanAddress: `0x${string}`;
            loanId: bigint;
            nftAddress: `0x${string}`;
            tokenId: bigint;
            largestTrancheIdx: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          auction: Auction;
      }
      +
    +

    Returns Promise<number>

+
+ +
    + +
  • +

    Get the owner of an ERC 721 token.

    +
    +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          nftAddress: `0x${string}`;
          tokenId: bigint;
      }
      +
        +
      • +
        nftAddress: `0x${string}`
      • +
      • +
        tokenId: bigint
    +

    Returns Promise<`0x${string}`>

    +
+
+ +
    + +
  • +

    Get the balance of an ERC 1155 token id.

    +
    +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          nftAddress: `0x${string}`;
          tokenId: bigint;
      }
      +
        +
      • +
        nftAddress: `0x${string}`
      • +
      • +
        tokenId: bigint
    +

    Returns Promise<bigint>

    +
+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          nftAddress: `0x${string}`;
          standard: NftStandard;
          to?: `0x${string}`;
      }
      +
        +
      • +
        nftAddress: `0x${string}`
      • +
      • +
        standard: NftStandard
      • +
      • +
        Optional to?: `0x${string}`
    +

    Returns Promise<boolean>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          nftAddress: `0x${string}`;
          standard: NftStandard;
          to?: `0x${string}`;
      }
      +
        +
      • +
        nftAddress: `0x${string}`
      • +
      • +
        standard: NftStandard
      • +
      • +
        Optional to?: `0x${string}`
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            owner: `0x${string}`;
            operator: `0x${string}`;
            approved: boolean;
        } | {
            owner: `0x${string}`;
            operator: `0x${string}`;
            approved: boolean;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          tokenAddress: `0x${string}`;
          amount: bigint;
          to?: `0x${string}`;
      }
      +
        +
      • +
        tokenAddress: `0x${string}`
      • +
      • +
        amount: bigint
      • +
      • +
        Optional to?: `0x${string}`
    +

    Returns Promise<boolean>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          tokenAddress: `0x${string}`;
          amount?: bigint;
          to?: `0x${string}`;
      }
      +
        +
      • +
        tokenAddress: `0x${string}`
      • +
      • +
        Optional amount?: bigint
      • +
      • +
        Optional to?: `0x${string}`
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            owner: `0x${string}`;
            spender: `0x${string}`;
            amount: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        vaultId: bigint;
        receipts: ({
            vaultId: bigint;
            collection: `0x${string}`;
            tokenId: bigint;
        } | {
            vaultId: bigint;
            token: `0x${string}`;
            tokenId: bigint;
            amount: bigint;
        })[];
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          nfts: CreateVaultArgs;
          userVaultAddress?: `0x${string}`;
      }
      +
    +

    Returns Promise<{
        vaultId: bigint;
        receipts: ({
            vaultId: bigint;
            collection: `0x${string}`;
            tokenId: bigint;
        } | {
            vaultId: bigint;
            token: `0x${string}`;
            tokenId: bigint;
            amount: bigint;
        })[];
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            vaultId: bigint;
            collection: `0x${string}`;
            tokenId: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            vaultId: bigint;
            token: `0x${string}`;
            tokenId: bigint;
            amount: bigint;
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            events: {
                vaultId: bigint;
                collection: `0x${string}`;
                tokenId: bigint;
            }[];
            oldEvents: {
                vaultId: bigint;
                collection: `0x${string}`;
                tokenId: bigint;
            }[];
        }>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitMined: (() => Promise<TransactionReceipt>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitMined: (() => Promise<TransactionReceipt>);
    }>

+
+ +
    + +
  • +
    +

    Parameters

    +
      +
    • +
      __namedParameters: {
          repaymentCalldata: `0x${string}`;
          mslContractAddress: `0x${string}`;
          price: bigint;
      }
      +
        +
      • +
        repaymentCalldata: `0x${string}`
      • +
      • +
        mslContractAddress: `0x${string}`
      • +
      • +
        price: bigint
    +

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<TransactionReceipt>);
    }>

+
+

Properties

+
+ +
contracts: Contracts
+
+ +
wallet: {}
+
+

Type declaration

+
    +
    + +
    account: Account
    +
    + +
    bcClient: {}
    +
    +

    Type declaration

    +
      +
      + +
      api: Api
      +
      + +
      defaults: {
          Msl: `0x${string}`;
          UserVault: `0x${string}`;
      }
      +
      +

      Type declaration

      +
        +
      • +
        Msl: `0x${string}`
      • +
      • +
        UserVault: `0x${string}`
      +
      +
      \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.AllV4.html b/docs/0.17.2/classes/Internal.AllV4.html new file mode 100644 index 00000000..48f61353 --- /dev/null +++ b/docs/0.17.2/classes/Internal.AllV4.html @@ -0,0 +1,551 @@ +AllV4 | Gondi JS SDK - v0.17.2
      +
      + +
      +
      +
      +
      + +

      Class AllV4

      +
      +

      Hierarchy

      +
      +
      +
      +
      + +
      +
      +

      Constructors

      +
      + +
      +
      +

      Methods

      +
      + +
        + +
      • +
        +

        Parameters

        +
          +
        • +
          __namedParameters: {
              collectionContractAddress: `0x${string}`;
              tokenId: bigint;
              bid: bigint;
          }
          +
            +
          • +
            collectionContractAddress: `0x${string}`
          • +
          • +
            tokenId: bigint
          • +
          • +
            bid: bigint
        +

        Returns Promise<{
            txHash: `0x${string}`;
            waitTxInBlock: (() => Promise<{
                auctionContract: `0x${string}`;
                tokenId: bigint;
                newBidder: `0x${string}`;
                bid: bigint;
                loanAddress: `0x${string}`;
                loanId: bigint;
            }>);
        }>

      +
      + +
      +
      + +
        + +
      • +

        Returns Promise<{
            txHash: `0x${string}`;
            waitTxInBlock: (() => Promise<{
                loanAddress: `0x${string}`;
                loanId: bigint;
                nftAddress: `0x${string}`;
                tokenId: bigint;
                largestTrancheIdx: bigint;
            }>);
        }>

      +
      + +
        + +
      • +
        +

        Parameters

        +
          +
        • +
          __namedParameters: {
              loan: LoanV4;
          }
          +
        +

        Returns Promise<{
            txHash: `0x${string}`;
            waitTxInBlock: (() => Promise<{
                loanContract: `0x${string}`;
                loanId: bigint;
                auctionContract: `0x${string}`;
                tokenId: bigint;
                asset: `0x${string}`;
                highestBid: bigint;
                settler: `0x${string}`;
                triggerFee: bigint;
            }>);
        }>

      +
      + +
        + +
      • +
        +

        Parameters

        +
          +
        • +
          data: `0x${string}`
        +

        Returns Promise<{
            txHash: `0x${string}`;
            waitTxInBlock: (() => Promise<TransactionReceipt>);
        }>

      +
      +

      Properties

      +
      + +
      LOAN_SETTLEMENT_ENCODE_TYPES: {
          name: string;
          type: string;
          components: ({
              name: string;
              type: string;
              components?: undefined;
          } | {
              name: string;
              type: string;
              components: {
                  name: string;
                  internalType: string;
                  type: string;
              }[];
          })[];
      }[] = ...
      +
      +

      Type declaration

      +
        +
      • +
        name: string
      • +
      • +
        type: string
      • +
      • +
        components: ({
            name: string;
            type: string;
            components?: undefined;
        } | {
            name: string;
            type: string;
            components: {
                name: string;
                internalType: string;
                type: string;
            }[];
        })[]
      +
      + +
      abi: readonly [{
          stateMutability: "nonpayable";
          type: "constructor";
          inputs: readonly [{
              name: "currencyManager";
              internalType: "address";
              type: "address";
          }, {
              name: "collectionManager";
              internalType: "address";
              type: "address";
          }, {
              name: "triggerFee";
              internalType: "uint256";
              type: "uint256";
          }];
      }, {
          type: "error";
          inputs: readonly [];
          name: "AuctionAlreadyInProgressError";
      }, {
          type: "error";
          inputs: readonly [{
              name: "_contract";
              internalType: "address";
              type: "address";
          }, {
              name: "_tokenId";
              internalType: "uint256";
              type: "uint256";
          }];
          name: "AuctionNotExistsError";
      }, {
          type: "error";
          inputs: readonly [{
              name: "_expiration";
              internalType: "uint96";
              type: "uint96";
          }];
          name: "AuctionNotOverError";
      }, {
          type: "error";
          inputs: readonly [{
              name: "_expiration";
              internalType: "uint96";
              type: "uint96";
          }];
          name: "AuctionOverError";
      }, {
          type: "error";
          inputs: readonly [];
          name: "CollectionNotWhitelistedError";
      }, {
          type: "error";
          inputs: readonly [];
          name: "CurrencyNotWhitelistedError";
      }, {
          type: "error";
          inputs: readonly [{
              name: "triggerFee";
              internalType: "uint256";
              type: "uint256";
          }];
          name: "InvalidTriggerFee";
      }, {
          type: "error";
          inputs: readonly [{
              name: "_loan";
              internalType: "address";
              type: "address";
          }];
          name: "LoanNotAcceptedError";
      }, {
          type: "error";
          inputs: readonly [{
              name: "_minBid";
              internalType: "uint256";
              type: "uint256";
          }];
          name: "MinBidError";
      }, {
          type: "error";
          inputs: readonly [{
              name: "_owner";
              internalType: "address";
              type: "address";
          }];
          name: "NFTNotOwnedError";
      }, {
          type: "error";
          inputs: readonly [];
          name: "NoBidsError";
      }, {
          type: "error";
          inputs: readonly [];
          name: "ZeroAddressError";
      }, {
          type: "event";
          anonymous: false;
          inputs: readonly [{
              name: "loanContract";
              internalType: "address";
              type: "address";
              indexed: false;
          }, {
              name: "loanId";
              internalType: "uint256";
              type: "uint256";
              indexed: false;
          }, {
              name: "auctionContract";
              internalType: "address";
              type: "address";
              indexed: false;
          }, {
              name: "tokenId";
              internalType: "uint256";
              type: "uint256";
              indexed: false;
          }, {
              name: "asset";
              internalType: "address";
              type: "address";
              indexed: false;
          }, {
              name: "highestBid";
              internalType: "uint256";
              type: "uint256";
              indexed: false;
          }, {
              name: "settler";
              internalType: "address";
              type: "address";
              indexed: false;
          }, {
              name: "triggerFee";
              internalType: "uint256";
              type: "uint256";
              indexed: false;
          }];
          name: "AuctionSettled";
      }, {
          type: "event";
          anonymous: false;
          inputs: readonly [{
              name: "auctionContract";
              internalType: "address";
              type: "address";
              indexed: false;
          }, {
              name: "tokenId";
              internalType: "uint256";
              type: "uint256";
              indexed: false;
          }, {
              name: "newBidder";
              internalType: "address";
              type: "address";
              indexed: false;
          }, {
              name: "bid";
              internalType: "uint256";
              type: "uint256";
              indexed: false;
          }, {
              name: "loanAddress";
              internalType: "address";
              type: "address";
              indexed: false;
          }, {
              name: "loanId";
              internalType: "uint256";
              type: "uint256";
              indexed: false;
          }];
          name: "BidPlaced";
      }, {
          type: "event";
          anonymous: false;
          inputs: readonly [{
              name: "loan";
              internalType: "address";
              type: "address";
              indexed: false;
          }];
          name: "LoanContractAdded";
      }, {
          type: "event";
          anonymous: false;
          inputs: readonly [{
              name: "loan";
              internalType: "address";
              type: "address";
              indexed: false;
          }];
          name: "LoanContractRemoved";
      }, {
          type: "event";
          anonymous: false;
          inputs: readonly [{
              name: "loanAddress";
              internalType: "address";
              type: "address";
              indexed: false;
          }, {
              name: "loanId";
              internalType: "uint256";
              type: "uint256";
              indexed: false;
          }, {
              name: "duration";
              internalType: "uint96";
              type: "uint96";
              indexed: false;
          }, {
              name: "asset";
              internalType: "address";
              type: "address";
              indexed: false;
          }];
          name: "LoanLiquidationStarted";
      }, {
          type: "event";
          anonymous: false;
          inputs: readonly [{
              name: "user";
              internalType: "address";
              type: "address";
              indexed: true;
          }, {
              name: "newOwner";
              internalType: "address";
              type: "address";
              indexed: true;
          }];
          name: "OwnershipTransferred";
      }, {
          type: "event";
          anonymous: false;
          inputs: readonly [{
              name: "triggerFee";
              internalType: "uint256";
              type: "uint256";
              indexed: false;
          }];
          name: "TriggerFeeUpdated";
      }, {
          stateMutability: "view";
          type: "function";
          inputs: readonly [];
          name: "MAX_TRIGGER_FEE";
          outputs: readonly [{
              name: "";
              internalType: "uint256";
              type: "uint256";
          }];
      }, {
          stateMutability: "view";
          type: "function";
          inputs: readonly [];
          name: "MIN_INCREMENT_BPS";
          outputs: readonly [{
              name: "";
              internalType: "uint256";
              type: "uint256";
          }];
      }, {
          stateMutability: "nonpayable";
          type: "function";
          inputs: readonly [{
              name: "_loanContract";
              internalType: "address";
              type: "address";
          }];
          name: "addLoanContract";
          outputs: readonly [];
      }, {
          stateMutability: "view";
          type: "function";
          inputs: readonly [{
              name: "_contract";
              internalType: "address";
              type: "address";
          }, {
              name: "_tokenId";
              internalType: "uint256";
              type: "uint256";
          }];
          name: "getAuction";
          outputs: readonly [{
              name: "";
              internalType: "struct AuctionLoanLiquidator.Auction";
              type: "tuple";
              components: readonly [{
                  name: "loanAddress";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "loanId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "highestBid";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "highestBidder";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "duration";
                  internalType: "uint96";
                  type: "uint96";
              }, {
                  name: "asset";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "startTime";
                  internalType: "uint96";
                  type: "uint96";
              }, {
                  name: "originator";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "lastBidTime";
                  internalType: "uint96";
                  type: "uint96";
              }];
          }];
      }, {
          stateMutability: "view";
          type: "function";
          inputs: readonly [];
          name: "getTriggerFee";
          outputs: readonly [{
              name: "";
              internalType: "uint256";
              type: "uint256";
          }];
      }, {
          stateMutability: "view";
          type: "function";
          inputs: readonly [];
          name: "getValidLoanContracts";
          outputs: readonly [{
              name: "";
              internalType: "address[]";
              type: "address[]";
          }];
      }, {
          stateMutability: "nonpayable";
          type: "function";
          inputs: readonly [{
              name: "_loanId";
              internalType: "uint256";
              type: "uint256";
          }, {
              name: "_contract";
              internalType: "address";
              type: "address";
          }, {
              name: "_tokenId";
              internalType: "uint256";
              type: "uint256";
          }, {
              name: "_asset";
              internalType: "address";
              type: "address";
          }, {
              name: "_duration";
              internalType: "uint96";
              type: "uint96";
          }, {
              name: "_originator";
              internalType: "address";
              type: "address";
          }];
          name: "liquidateLoan";
          outputs: readonly [];
      }, {
          stateMutability: "nonpayable";
          type: "function";
          inputs: readonly [{
              name: "";
              internalType: "address";
              type: "address";
          }, {
              name: "";
              internalType: "address";
              type: "address";
          }, {
              name: "";
              internalType: "uint256";
              type: "uint256";
          }, {
              name: "";
              internalType: "bytes";
              type: "bytes";
          }];
          name: "onERC721Received";
          outputs: readonly [{
              name: "";
              internalType: "bytes4";
              type: "bytes4";
          }];
      }, {
          stateMutability: "view";
          type: "function";
          inputs: readonly [];
          name: "owner";
          outputs: readonly [{
              name: "";
              internalType: "address";
              type: "address";
          }];
      }, {
          stateMutability: "nonpayable";
          type: "function";
          inputs: readonly [{
              name: "_contract";
              internalType: "address";
              type: "address";
          }, {
              name: "_tokenId";
              internalType: "uint256";
              type: "uint256";
          }, {
              name: "_bid";
              internalType: "uint256";
              type: "uint256";
          }];
          name: "placeBid";
          outputs: readonly [];
      }, {
          stateMutability: "nonpayable";
          type: "function";
          inputs: readonly [{
              name: "_loanContract";
              internalType: "address";
              type: "address";
          }];
          name: "removeLoanContract";
          outputs: readonly [];
      }, {
          stateMutability: "nonpayable";
          type: "function";
          inputs: readonly [{
              name: "_contract";
              internalType: "address";
              type: "address";
          }, {
              name: "_tokenId";
              internalType: "uint256";
              type: "uint256";
          }, {
              name: "_loan";
              internalType: "bytes";
              type: "bytes";
          }];
          name: "settleAuction";
          outputs: readonly [];
      }, {
          stateMutability: "nonpayable";
          type: "function";
          inputs: readonly [{
              name: "newOwner";
              internalType: "address";
              type: "address";
          }];
          name: "transferOwnership";
          outputs: readonly [];
      }, {
          stateMutability: "nonpayable";
          type: "function";
          inputs: readonly [{
              name: "triggerFee";
              internalType: "uint256";
              type: "uint256";
          }];
          name: "updateTriggerFee";
          outputs: readonly [];
      }]
      +
      + +
      address: `0x${string}`
      +
      + +
      bcClient: {}
      +
      +

      Type declaration

      +
        +
        + +
        wallet: {}
        +
        +

        Type declaration

        +
          +
          + +
          contract: GetContractReturnType<readonly [{
              stateMutability: "nonpayable";
              type: "constructor";
              inputs: readonly [{
                  name: "currencyManager";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "collectionManager";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              type: "error";
              inputs: readonly [];
              name: "AuctionAlreadyInProgressError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "AuctionNotExistsError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_expiration";
                  internalType: "uint96";
                  type: "uint96";
              }];
              name: "AuctionNotOverError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_expiration";
                  internalType: "uint96";
                  type: "uint96";
              }];
              name: "AuctionOverError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "CollectionNotWhitelistedError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "CurrencyNotWhitelistedError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "InvalidTriggerFee";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_loan";
                  internalType: "address";
                  type: "address";
              }];
              name: "LoanNotAcceptedError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_minBid";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "MinBidError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_owner";
                  internalType: "address";
                  type: "address";
              }];
              name: "NFTNotOwnedError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "NoBidsError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "ZeroAddressError";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loanContract";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "loanId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "auctionContract";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "tokenId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "asset";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "highestBid";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "settler";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }];
              name: "AuctionSettled";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "auctionContract";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "tokenId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "newBidder";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "bid";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "loanAddress";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "loanId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }];
              name: "BidPlaced";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loan";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }];
              name: "LoanContractAdded";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loan";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }];
              name: "LoanContractRemoved";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loanAddress";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "loanId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "duration";
                  internalType: "uint96";
                  type: "uint96";
                  indexed: false;
              }, {
                  name: "asset";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }];
              name: "LoanLiquidationStarted";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "user";
                  internalType: "address";
                  type: "address";
                  indexed: true;
              }, {
                  name: "newOwner";
                  internalType: "address";
                  type: "address";
                  indexed: true;
              }];
              name: "OwnershipTransferred";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }];
              name: "TriggerFeeUpdated";
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "MAX_TRIGGER_FEE";
              outputs: readonly [{
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "MIN_INCREMENT_BPS";
              outputs: readonly [{
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_loanContract";
                  internalType: "address";
                  type: "address";
              }];
              name: "addLoanContract";
              outputs: readonly [];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "getAuction";
              outputs: readonly [{
                  name: "";
                  internalType: "struct AuctionLoanLiquidator.Auction";
                  type: "tuple";
                  components: readonly [{
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBid";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBidder";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "startTime";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "originator";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "lastBidTime";
                      internalType: "uint96";
                      type: "uint96";
                  }];
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "getTriggerFee";
              outputs: readonly [{
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "getValidLoanContracts";
              outputs: readonly [{
                  name: "";
                  internalType: "address[]";
                  type: "address[]";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_loanId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_asset";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_duration";
                  internalType: "uint96";
                  type: "uint96";
              }, {
                  name: "_originator";
                  internalType: "address";
                  type: "address";
              }];
              name: "liquidateLoan";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "";
                  internalType: "bytes";
                  type: "bytes";
              }];
              name: "onERC721Received";
              outputs: readonly [{
                  name: "";
                  internalType: "bytes4";
                  type: "bytes4";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "owner";
              outputs: readonly [{
                  name: "";
                  internalType: "address";
                  type: "address";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_bid";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "placeBid";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_loanContract";
                  internalType: "address";
                  type: "address";
              }];
              name: "removeLoanContract";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_loan";
                  internalType: "bytes";
                  type: "bytes";
              }];
              name: "settleAuction";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "newOwner";
                  internalType: "address";
                  type: "address";
              }];
              name: "transferOwnership";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "updateTriggerFee";
              outputs: readonly [];
          }], {} | {}>
          +
          + +
          safeContractWrite: {
              transferOwnership: ((args, options?) => Promise<`0x${string}`>);
              addLoanContract: ((args, options?) => Promise<`0x${string}`>);
              liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
              onERC721Received: ((args, options?) => Promise<`0x${string}`>);
              placeBid: ((args, options?) => Promise<`0x${string}`>);
              removeLoanContract: ((args, options?) => Promise<`0x${string}`>);
              settleAuction: ((args, options?) => Promise<`0x${string}`>);
              updateTriggerFee: ((args, options?) => Promise<`0x${string}`>);
          }
          +
          +

          Type declaration

          +
            +
          • +
            transferOwnership: ((args, options?) => Promise<`0x${string}`>)
            +
              +
            • +
                +
              • (args, options?): Promise<`0x${string}`>
              • +
              • +
                +

                Parameters

                +
                  +
                • +
                  args: readonly [`0x${string}`]
                • +
                • +
                  Optional options: {
                      value?: bigint;
                  }
                  +
                    +
                  • +
                    Optional value?: bigint
                +

                Returns Promise<`0x${string}`>

          • +
          • +
            addLoanContract: ((args, options?) => Promise<`0x${string}`>)
            +
              +
            • +
                +
              • (args, options?): Promise<`0x${string}`>
              • +
              • +
                +

                Parameters

                +
                  +
                • +
                  args: readonly [`0x${string}`]
                • +
                • +
                  Optional options: {
                      value?: bigint;
                  }
                  +
                    +
                  • +
                    Optional value?: bigint
                +

                Returns Promise<`0x${string}`>

          • +
          • +
            liquidateLoan: ((args, options?) => Promise<`0x${string}`>)
            +
              +
            • +
                +
              • (args, options?): Promise<`0x${string}`>
              • +
              • +
                +

                Parameters

                +
                  +
                • +
                  args: readonly [bigint, `0x${string}`, bigint, `0x${string}`, bigint, `0x${string}`]
                • +
                • +
                  Optional options: {
                      value?: bigint;
                  }
                  +
                    +
                  • +
                    Optional value?: bigint
                +

                Returns Promise<`0x${string}`>

          • +
          • +
            onERC721Received: ((args, options?) => Promise<`0x${string}`>)
            +
              +
            • +
                +
              • (args, options?): Promise<`0x${string}`>
              • +
              • +
                +

                Parameters

                +
                  +
                • +
                  args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
                • +
                • +
                  Optional options: {
                      value?: bigint;
                  }
                  +
                    +
                  • +
                    Optional value?: bigint
                +

                Returns Promise<`0x${string}`>

          • +
          • +
            placeBid: ((args, options?) => Promise<`0x${string}`>)
            +
              +
            • +
                +
              • (args, options?): Promise<`0x${string}`>
              • +
              • +
                +

                Parameters

                +
                  +
                • +
                  args: readonly [`0x${string}`, bigint, bigint]
                • +
                • +
                  Optional options: {
                      value?: bigint;
                  }
                  +
                    +
                  • +
                    Optional value?: bigint
                +

                Returns Promise<`0x${string}`>

          • +
          • +
            removeLoanContract: ((args, options?) => Promise<`0x${string}`>)
            +
              +
            • +
                +
              • (args, options?): Promise<`0x${string}`>
              • +
              • +
                +

                Parameters

                +
                  +
                • +
                  args: readonly [`0x${string}`]
                • +
                • +
                  Optional options: {
                      value?: bigint;
                  }
                  +
                    +
                  • +
                    Optional value?: bigint
                +

                Returns Promise<`0x${string}`>

          • +
          • +
            settleAuction: ((args, options?) => Promise<`0x${string}`>)
            +
              +
            • +
                +
              • (args, options?): Promise<`0x${string}`>
              • +
              • +
                +

                Parameters

                +
                  +
                • +
                  args: readonly [`0x${string}`, bigint, `0x${string}`]
                • +
                • +
                  Optional options: {
                      value?: bigint;
                  }
                  +
                    +
                  • +
                    Optional value?: bigint
                +

                Returns Promise<`0x${string}`>

          • +
          • +
            updateTriggerFee: ((args, options?) => Promise<`0x${string}`>)
            +
              +
            • +
                +
              • (args, options?): Promise<`0x${string}`>
              • +
              • +
                +

                Parameters

                +
                  +
                • +
                  args: readonly [bigint]
                • +
                • +
                  Optional options: {
                      value?: bigint;
                  }
                  +
                    +
                  • +
                    Optional value?: bigint
                +

                Returns Promise<`0x${string}`>

          +
          + +
          parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
              stateMutability: "nonpayable";
              type: "constructor";
              inputs: readonly [{
                  name: "currencyManager";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "collectionManager";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              type: "error";
              inputs: readonly [];
              name: "AuctionAlreadyInProgressError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "AuctionNotExistsError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_expiration";
                  internalType: "uint96";
                  type: "uint96";
              }];
              name: "AuctionNotOverError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_expiration";
                  internalType: "uint96";
                  type: "uint96";
              }];
              name: "AuctionOverError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "CollectionNotWhitelistedError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "CurrencyNotWhitelistedError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "InvalidTriggerFee";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_loan";
                  internalType: "address";
                  type: "address";
              }];
              name: "LoanNotAcceptedError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_minBid";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "MinBidError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_owner";
                  internalType: "address";
                  type: "address";
              }];
              name: "NFTNotOwnedError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "NoBidsError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "ZeroAddressError";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loanContract";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "loanId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "auctionContract";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "tokenId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "asset";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "highestBid";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "settler";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }];
              name: "AuctionSettled";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "auctionContract";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "tokenId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "newBidder";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "bid";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "loanAddress";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "loanId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }];
              name: "BidPlaced";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loan";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }];
              name: "LoanContractAdded";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loan";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }];
              name: "LoanContractRemoved";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loanAddress";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "loanId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "duration";
                  internalType: "uint96";
                  type: "uint96";
                  indexed: false;
              }, {
                  name: "asset";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }];
              name: "LoanLiquidationStarted";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "user";
                  internalType: "address";
                  type: "address";
                  indexed: true;
              }, {
                  name: "newOwner";
                  internalType: "address";
                  type: "address";
                  indexed: true;
              }];
              name: "OwnershipTransferred";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }];
              name: "TriggerFeeUpdated";
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "MAX_TRIGGER_FEE";
              outputs: readonly [{
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "MIN_INCREMENT_BPS";
              outputs: readonly [{
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_loanContract";
                  internalType: "address";
                  type: "address";
              }];
              name: "addLoanContract";
              outputs: readonly [];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "getAuction";
              outputs: readonly [{
                  name: "";
                  internalType: "struct AuctionLoanLiquidator.Auction";
                  type: "tuple";
                  components: readonly [{
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBid";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBidder";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "startTime";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "originator";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "lastBidTime";
                      internalType: "uint96";
                      type: "uint96";
                  }];
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "getTriggerFee";
              outputs: readonly [{
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "getValidLoanContracts";
              outputs: readonly [{
                  name: "";
                  internalType: "address[]";
                  type: "address[]";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_loanId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_asset";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_duration";
                  internalType: "uint96";
                  type: "uint96";
              }, {
                  name: "_originator";
                  internalType: "address";
                  type: "address";
              }];
              name: "liquidateLoan";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "";
                  internalType: "bytes";
                  type: "bytes";
              }];
              name: "onERC721Received";
              outputs: readonly [{
                  name: "";
                  internalType: "bytes4";
                  type: "bytes4";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "owner";
              outputs: readonly [{
                  name: "";
                  internalType: "address";
                  type: "address";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_bid";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "placeBid";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_loanContract";
                  internalType: "address";
                  type: "address";
              }];
              name: "removeLoanContract";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_loan";
                  internalType: "bytes";
                  type: "bytes";
              }];
              name: "settleAuction";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "newOwner";
                  internalType: "address";
                  type: "address";
              }];
              name: "transferOwnership";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "updateTriggerFee";
              outputs: readonly [];
          }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated")[]
              ? TFunctionName[number]
              : TFunctionName>)
          +
          +

          Type declaration

          +
            +
          • +
              +
            • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                  stateMutability: "nonpayable";
                  type: "constructor";
                  inputs: readonly [{
                      name: "currencyManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "collectionManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "AuctionAlreadyInProgressError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "AuctionNotExistsError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionNotOverError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionOverError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CollectionNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CurrencyNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "InvalidTriggerFee";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_loan";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "LoanNotAcceptedError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_minBid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "MinBidError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_owner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "NFTNotOwnedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "NoBidsError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "ZeroAddressError";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loanContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "auctionContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "highestBid";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "settler";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "AuctionSettled";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "auctionContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "newBidder";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "bid";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "BidPlaced";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractAdded";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractRemoved";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "duration";
                      internalType: "uint96";
                      type: "uint96";
                      indexed: false;
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanLiquidationStarted";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "user";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }, {
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }];
                  name: "OwnershipTransferred";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "TriggerFeeUpdated";
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "MAX_TRIGGER_FEE";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "MIN_INCREMENT_BPS";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "addLoanContract";
                  outputs: readonly [];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "getAuction";
                  outputs: readonly [{
                      name: "";
                      internalType: "struct AuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getTriggerFee";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getValidLoanContracts";
                  outputs: readonly [{
                      name: "";
                      internalType: "address[]";
                      type: "address[]";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "_originator";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "liquidateLoan";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "";
                      internalType: "bytes";
                      type: "bytes";
                  }];
                  name: "onERC721Received";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes4";
                      type: "bytes4";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "owner";
                  outputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_bid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "placeBid";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "removeLoanContract";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_loan";
                      internalType: "bytes";
                      type: "bytes";
                  }];
                  name: "settleAuction";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "transferOwnership";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "updateTriggerFee";
                  outputs: readonly [];
              }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated")[]
                  ? TFunctionName[number]
                  : TFunctionName>
            • +
            • +
              +

              Type Parameters

              +
                +
              • +

                TFunctionName extends "OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated"

              +
              +

              Parameters

              +
                +
              • +
                eventName: TFunctionName
              • +
              • +
                logs: Log<bigint, number, false>[]
              +

              Returns ParseEventLogsReturnType<readonly [{
                  stateMutability: "nonpayable";
                  type: "constructor";
                  inputs: readonly [{
                      name: "currencyManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "collectionManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "AuctionAlreadyInProgressError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "AuctionNotExistsError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionNotOverError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionOverError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CollectionNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CurrencyNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "InvalidTriggerFee";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_loan";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "LoanNotAcceptedError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_minBid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "MinBidError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_owner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "NFTNotOwnedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "NoBidsError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "ZeroAddressError";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loanContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "auctionContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "highestBid";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "settler";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "AuctionSettled";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "auctionContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "newBidder";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "bid";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "BidPlaced";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractAdded";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractRemoved";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "duration";
                      internalType: "uint96";
                      type: "uint96";
                      indexed: false;
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanLiquidationStarted";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "user";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }, {
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }];
                  name: "OwnershipTransferred";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "TriggerFeeUpdated";
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "MAX_TRIGGER_FEE";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "MIN_INCREMENT_BPS";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "addLoanContract";
                  outputs: readonly [];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "getAuction";
                  outputs: readonly [{
                      name: "";
                      internalType: "struct AuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getTriggerFee";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getValidLoanContracts";
                  outputs: readonly [{
                      name: "";
                      internalType: "address[]";
                      type: "address[]";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "_originator";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "liquidateLoan";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "";
                      internalType: "bytes";
                      type: "bytes";
                  }];
                  name: "onERC721Received";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes4";
                      type: "bytes4";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "owner";
                  outputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_bid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "placeBid";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "removeLoanContract";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_loan";
                      internalType: "bytes";
                      type: "bytes";
                  }];
                  name: "settleAuction";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "transferOwnership";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "updateTriggerFee";
                  outputs: readonly [];
              }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated")[]
                  ? TFunctionName[number]
                  : TFunctionName>

          +
          + +
          +
          \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.AllV5.html b/docs/0.17.2/classes/Internal.AllV5.html new file mode 100644 index 00000000..47734d7d --- /dev/null +++ b/docs/0.17.2/classes/Internal.AllV5.html @@ -0,0 +1,557 @@ +AllV5 | Gondi JS SDK - v0.17.2
          +
          + +
          +
          +
          +
          + +

          Class AllV5

          +
          +

          Hierarchy

          +
          +
          +
          +
          + +
          +
          +

          Constructors

          +
          + +
          +
          +

          Methods

          +
          + +
            + +
          • +
            +

            Parameters

            +
              +
            • +
              __namedParameters: {
                  collectionContractAddress: `0x${string}`;
                  tokenId: bigint;
                  bid: bigint;
                  auction: Auction;
              }
              +
                +
              • +
                collectionContractAddress: `0x${string}`
              • +
              • +
                tokenId: bigint
              • +
              • +
                bid: bigint
              • +
              • +
                auction: Auction
            +

            Returns Promise<{
                txHash: `0x${string}`;
                waitTxInBlock: (() => Promise<{
                    collection: `0x${string}`;
                    tokenId: bigint;
                    newBidder: `0x${string}`;
                    bid: bigint;
                    loanAddress: `0x${string}`;
                    loanId: bigint;
                }>);
            }>

          +
          + +
          +
          + +
            + +
          • +

            Returns Promise<{
                txHash: `0x${string}`;
                waitTxInBlock: (() => Promise<{
                    loanAddress: `0x${string}`;
                    loanId: bigint;
                    nftAddress: `0x${string}`;
                    tokenId: bigint;
                    largestTrancheIdx: bigint;
                }>);
            }>

          +
          + +
            + +
          • +
            +

            Parameters

            +
            +

            Returns Promise<{
                txHash: `0x${string}`;
                waitTxInBlock: (() => Promise<{
                    loanContract: `0x${string}`;
                    loanId: bigint;
                    auctionContract: `0x${string}`;
                    tokenId: bigint;
                    asset: `0x${string}`;
                    proceeds: bigint;
                    settler: `0x${string}`;
                    triggerFee: bigint;
                }>);
            }>

          +
          + +
            + +
          • +
            +

            Parameters

            +
              +
            • +
              data: `0x${string}`
            +

            Returns Promise<{
                txHash: `0x${string}`;
                waitTxInBlock: (() => Promise<TransactionReceipt>);
            }>

          +
          +

          Properties

          +
          + +
          abi: readonly [{
              stateMutability: "nonpayable";
              type: "constructor";
              inputs: readonly [{
                  name: "liquidationDistributor";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "currencyManager";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "collectionManager";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              type: "error";
              inputs: readonly [];
              name: "AddressZeroError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "AuctionAlreadyInProgressError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_expiration";
                  internalType: "uint96";
                  type: "uint96";
              }];
              name: "AuctionNotOverError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_expiration";
                  internalType: "uint96";
                  type: "uint96";
              }];
              name: "AuctionOverError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "CollectionNotWhitelistedError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "CouldNotModifyValidLoansError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "CurrencyNotWhitelistedError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "InvalidHashAuctionError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "InvalidTriggerFee";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_loan";
                  internalType: "address";
                  type: "address";
              }];
              name: "LoanNotAcceptedError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_minBid";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "MinBidError";
          }, {
              type: "error";
              inputs: readonly [{
                  name: "_owner";
                  internalType: "address";
                  type: "address";
              }];
              name: "NFTNotOwnedError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "NoBidsError";
          }, {
              type: "error";
              inputs: readonly [];
              name: "ZeroAddressError";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loanContract";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "loanId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "auctionContract";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "tokenId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "asset";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "proceeds";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "settler";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }];
              name: "AuctionSettled";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "collection";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "tokenId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "newBidder";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "bid";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "loanAddress";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "loanId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }];
              name: "BidPlaced";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "liquidationDistributor";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }];
              name: "LiquidationDistributorUpdated";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loan";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }];
              name: "LoanContractAdded";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "loan";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }];
              name: "LoanContractRemoved";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "collection";
                  internalType: "address";
                  type: "address";
                  indexed: false;
              }, {
                  name: "tokenId";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }, {
                  name: "auction";
                  internalType: "struct IAuctionLoanLiquidator.Auction";
                  type: "tuple";
                  components: readonly [{
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBid";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBidder";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "startTime";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "originator";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "lastBidTime";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  indexed: false;
              }];
              name: "LoanLiquidationStarted";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "user";
                  internalType: "address";
                  type: "address";
                  indexed: true;
              }, {
                  name: "newOwner";
                  internalType: "address";
                  type: "address";
                  indexed: true;
              }];
              name: "OwnershipTransferred";
          }, {
              type: "event";
              anonymous: false;
              inputs: readonly [{
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
                  indexed: false;
              }];
              name: "TriggerFeeUpdated";
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "MAX_TRIGGER_FEE";
              outputs: readonly [{
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "MIN_INCREMENT_BPS";
              outputs: readonly [{
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_loanContract";
                  internalType: "address";
                  type: "address";
              }];
              name: "addLoanContract";
              outputs: readonly [];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "getAuctionHash";
              outputs: readonly [{
                  name: "";
                  internalType: "bytes32";
                  type: "bytes32";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "getLiquidationDistributor";
              outputs: readonly [{
                  name: "";
                  internalType: "address";
                  type: "address";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "getTriggerFee";
              outputs: readonly [{
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "getValidLoanContracts";
              outputs: readonly [{
                  name: "";
                  internalType: "address[]";
                  type: "address[]";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_loanId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_asset";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_duration";
                  internalType: "uint96";
                  type: "uint96";
              }, {
                  name: "_originator";
                  internalType: "address";
                  type: "address";
              }];
              name: "liquidateLoan";
              outputs: readonly [{
                  name: "";
                  internalType: "bytes";
                  type: "bytes";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "";
                  internalType: "bytes";
                  type: "bytes";
              }];
              name: "onERC721Received";
              outputs: readonly [{
                  name: "";
                  internalType: "bytes4";
                  type: "bytes4";
              }];
          }, {
              stateMutability: "view";
              type: "function";
              inputs: readonly [];
              name: "owner";
              outputs: readonly [{
                  name: "";
                  internalType: "address";
                  type: "address";
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_contract";
                  internalType: "address";
                  type: "address";
              }, {
                  name: "_tokenId";
                  internalType: "uint256";
                  type: "uint256";
              }, {
                  name: "_auction";
                  internalType: "struct IAuctionLoanLiquidator.Auction";
                  type: "tuple";
                  components: readonly [{
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBid";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBidder";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "startTime";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "originator";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "lastBidTime";
                      internalType: "uint96";
                      type: "uint96";
                  }];
              }, {
                  name: "_bid";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "placeBid";
              outputs: readonly [{
                  name: "";
                  internalType: "struct IAuctionLoanLiquidator.Auction";
                  type: "tuple";
                  components: readonly [{
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBid";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBidder";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "startTime";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "originator";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "lastBidTime";
                      internalType: "uint96";
                      type: "uint96";
                  }];
              }];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_loanContract";
                  internalType: "address";
                  type: "address";
              }];
              name: "removeLoanContract";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "_auction";
                  internalType: "struct IAuctionLoanLiquidator.Auction";
                  type: "tuple";
                  components: readonly [{
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBid";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "highestBidder";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "startTime";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "originator";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "lastBidTime";
                      internalType: "uint96";
                      type: "uint96";
                  }];
              }, {
                  name: "_loan";
                  internalType: "struct IMultiSourceLoan.Loan";
                  type: "tuple";
                  components: readonly [{
                      name: "borrower";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "nftCollateralTokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "nftCollateralAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "principalAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "principalAmount";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "startTime";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "duration";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "source";
                      internalType: "struct IMultiSourceLoan.Source[]";
                      type: "tuple[]";
                      components: readonly [{
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "lender";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "principalAmount";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "accruedInterest";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "startTime";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "aprBps";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }];
              }];
              name: "settleAuction";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "newOwner";
                  internalType: "address";
                  type: "address";
              }];
              name: "transferOwnership";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "__liquidationDistributor";
                  internalType: "address";
                  type: "address";
              }];
              name: "updateLiquidationDistributor";
              outputs: readonly [];
          }, {
              stateMutability: "nonpayable";
              type: "function";
              inputs: readonly [{
                  name: "triggerFee";
                  internalType: "uint256";
                  type: "uint256";
              }];
              name: "updateTriggerFee";
              outputs: readonly [];
          }]
          +
          + +
          address: `0x${string}`
          +
          + +
          bcClient: {}
          +
          +

          Type declaration

          +
            +
            + +
            wallet: {}
            +
            +

            Type declaration

            +
              +
              + +
              contract: GetContractReturnType<readonly [{
                  stateMutability: "nonpayable";
                  type: "constructor";
                  inputs: readonly [{
                      name: "liquidationDistributor";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "currencyManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "collectionManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "AddressZeroError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "AuctionAlreadyInProgressError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionNotOverError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionOverError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CollectionNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CouldNotModifyValidLoansError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CurrencyNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "InvalidHashAuctionError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "InvalidTriggerFee";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_loan";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "LoanNotAcceptedError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_minBid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "MinBidError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_owner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "NFTNotOwnedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "NoBidsError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "ZeroAddressError";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loanContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "auctionContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "proceeds";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "settler";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "AuctionSettled";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "collection";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "newBidder";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "bid";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "BidPlaced";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "liquidationDistributor";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LiquidationDistributorUpdated";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractAdded";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractRemoved";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "collection";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      indexed: false;
                  }];
                  name: "LoanLiquidationStarted";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "user";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }, {
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }];
                  name: "OwnershipTransferred";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "TriggerFeeUpdated";
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "MAX_TRIGGER_FEE";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "MIN_INCREMENT_BPS";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "addLoanContract";
                  outputs: readonly [];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "getAuctionHash";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes32";
                      type: "bytes32";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getLiquidationDistributor";
                  outputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getTriggerFee";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getValidLoanContracts";
                  outputs: readonly [{
                      name: "";
                      internalType: "address[]";
                      type: "address[]";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "_originator";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "liquidateLoan";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes";
                      type: "bytes";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "";
                      internalType: "bytes";
                      type: "bytes";
                  }];
                  name: "onERC721Received";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes4";
                      type: "bytes4";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "owner";
                  outputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }, {
                      name: "_bid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "placeBid";
                  outputs: readonly [{
                      name: "";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "removeLoanContract";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }, {
                      name: "_loan";
                      internalType: "struct IMultiSourceLoan.Loan";
                      type: "tuple";
                      components: readonly [{
                          name: "borrower";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "nftCollateralTokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "nftCollateralAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "principalAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "principalAmount";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "startTime";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "duration";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "source";
                          internalType: "struct IMultiSourceLoan.Source[]";
                          type: "tuple[]";
                          components: readonly [{
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "lender";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "accruedInterest";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "aprBps";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                      }];
                  }];
                  name: "settleAuction";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "transferOwnership";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "__liquidationDistributor";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "updateLiquidationDistributor";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "updateTriggerFee";
                  outputs: readonly [];
              }], {} | {}>
              +
              + +
              safeContractWrite: {
                  transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                  addLoanContract: ((args, options?) => Promise<`0x${string}`>);
                  liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                  onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                  placeBid: ((args, options?) => Promise<`0x${string}`>);
                  removeLoanContract: ((args, options?) => Promise<`0x${string}`>);
                  settleAuction: ((args, options?) => Promise<`0x${string}`>);
                  updateTriggerFee: ((args, options?) => Promise<`0x${string}`>);
                  updateLiquidationDistributor: ((args, options?) => Promise<`0x${string}`>);
              }
              +
              +

              Type declaration

              +
                +
              • +
                transferOwnership: ((args, options?) => Promise<`0x${string}`>)
                +
                  +
                • +
                    +
                  • (args, options?): Promise<`0x${string}`>
                  • +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      args: readonly [`0x${string}`]
                    • +
                    • +
                      Optional options: {
                          value?: bigint;
                      }
                      +
                        +
                      • +
                        Optional value?: bigint
                    +

                    Returns Promise<`0x${string}`>

              • +
              • +
                addLoanContract: ((args, options?) => Promise<`0x${string}`>)
                +
                  +
                • +
                    +
                  • (args, options?): Promise<`0x${string}`>
                  • +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      args: readonly [`0x${string}`]
                    • +
                    • +
                      Optional options: {
                          value?: bigint;
                      }
                      +
                        +
                      • +
                        Optional value?: bigint
                    +

                    Returns Promise<`0x${string}`>

              • +
              • +
                liquidateLoan: ((args, options?) => Promise<`0x${string}`>)
                +
                  +
                • +
                    +
                  • (args, options?): Promise<`0x${string}`>
                  • +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      args: readonly [bigint, `0x${string}`, bigint, `0x${string}`, bigint, `0x${string}`]
                    • +
                    • +
                      Optional options: {
                          value?: bigint;
                      }
                      +
                        +
                      • +
                        Optional value?: bigint
                    +

                    Returns Promise<`0x${string}`>

              • +
              • +
                onERC721Received: ((args, options?) => Promise<`0x${string}`>)
                +
                  +
                • +
                    +
                  • (args, options?): Promise<`0x${string}`>
                  • +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
                    • +
                    • +
                      Optional options: {
                          value?: bigint;
                      }
                      +
                        +
                      • +
                        Optional value?: bigint
                    +

                    Returns Promise<`0x${string}`>

              • +
              • +
                placeBid: ((args, options?) => Promise<`0x${string}`>)
                +
                  +
                • +
                    +
                  • (args, options?): Promise<`0x${string}`>
                  • +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      args: readonly [`0x${string}`, bigint, {
                          loanAddress: `0x${string}`;
                          loanId: bigint;
                          highestBid: bigint;
                          triggerFee: bigint;
                          highestBidder: `0x${string}`;
                          duration: bigint;
                          asset: `0x${string}`;
                          startTime: bigint;
                          originator: `0x${string}`;
                          lastBidTime: bigint;
                      }, bigint] | readonly [`0x${string}`, bigint, {
                          loanAddress: `0x${string}`;
                          loanId: bigint;
                          highestBid: bigint;
                          triggerFee: bigint;
                          highestBidder: `0x${string}`;
                          duration: bigint;
                          asset: `0x${string}`;
                          startTime: bigint;
                          originator: `0x${string}`;
                          lastBidTime: bigint;
                      }, bigint] & readonly [`0x${string}`, bigint, {
                          loanAddress: `0x${string}`;
                          loanId: bigint;
                          highestBid: bigint;
                          triggerFee: bigint;
                          highestBidder: `0x${string}`;
                          duration: bigint;
                          asset: `0x${string}`;
                          startTime: bigint;
                          originator: `0x${string}`;
                          lastBidTime: bigint;
                      }, bigint]
                    • +
                    • +
                      Optional options: {
                          value?: bigint;
                      }
                      +
                        +
                      • +
                        Optional value?: bigint
                    +

                    Returns Promise<`0x${string}`>

              • +
              • +
                removeLoanContract: ((args, options?) => Promise<`0x${string}`>)
                +
                  +
                • +
                    +
                  • (args, options?): Promise<`0x${string}`>
                  • +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      args: readonly [`0x${string}`]
                    • +
                    • +
                      Optional options: {
                          value?: bigint;
                      }
                      +
                        +
                      • +
                        Optional value?: bigint
                    +

                    Returns Promise<`0x${string}`>

              • +
              • +
                settleAuction: ((args, options?) => Promise<`0x${string}`>)
                +
                  +
                • +
                    +
                  • (args, options?): Promise<`0x${string}`>
                  • +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      args: readonly [{
                          loanAddress: `0x${string}`;
                          loanId: bigint;
                          highestBid: bigint;
                          triggerFee: bigint;
                          highestBidder: `0x${string}`;
                          duration: bigint;
                          asset: `0x${string}`;
                          startTime: bigint;
                          originator: `0x${string}`;
                          lastBidTime: bigint;
                      }, {
                          borrower: `0x${string}`;
                          nftCollateralTokenId: bigint;
                          nftCollateralAddress: `0x${string}`;
                          principalAddress: `0x${string}`;
                          principalAmount: bigint;
                          startTime: bigint;
                          duration: bigint;
                          source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                      }] | readonly [{
                          loanAddress: `0x${string}`;
                          loanId: bigint;
                          highestBid: bigint;
                          triggerFee: bigint;
                          highestBidder: `0x${string}`;
                          duration: bigint;
                          asset: `0x${string}`;
                          startTime: bigint;
                          originator: `0x${string}`;
                          lastBidTime: bigint;
                      }, {
                          borrower: `0x${string}`;
                          nftCollateralTokenId: bigint;
                          nftCollateralAddress: `0x${string}`;
                          principalAddress: `0x${string}`;
                          principalAmount: bigint;
                          startTime: bigint;
                          duration: bigint;
                          source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                      }] & readonly [{
                          loanAddress: `0x${string}`;
                          loanId: bigint;
                          highestBid: bigint;
                          triggerFee: bigint;
                          highestBidder: `0x${string}`;
                          duration: bigint;
                          asset: `0x${string}`;
                          startTime: bigint;
                          originator: `0x${string}`;
                          lastBidTime: bigint;
                      }, {
                          borrower: `0x${string}`;
                          nftCollateralTokenId: bigint;
                          nftCollateralAddress: `0x${string}`;
                          principalAddress: `0x${string}`;
                          principalAmount: bigint;
                          startTime: bigint;
                          duration: bigint;
                          source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                      }]
                    • +
                    • +
                      Optional options: {
                          value?: bigint;
                      }
                      +
                        +
                      • +
                        Optional value?: bigint
                    +

                    Returns Promise<`0x${string}`>

              • +
              • +
                updateTriggerFee: ((args, options?) => Promise<`0x${string}`>)
                +
                  +
                • +
                    +
                  • (args, options?): Promise<`0x${string}`>
                  • +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      args: readonly [bigint]
                    • +
                    • +
                      Optional options: {
                          value?: bigint;
                      }
                      +
                        +
                      • +
                        Optional value?: bigint
                    +

                    Returns Promise<`0x${string}`>

              • +
              • +
                updateLiquidationDistributor: ((args, options?) => Promise<`0x${string}`>)
                +
                  +
                • +
                    +
                  • (args, options?): Promise<`0x${string}`>
                  • +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      args: readonly [`0x${string}`]
                    • +
                    • +
                      Optional options: {
                          value?: bigint;
                      }
                      +
                        +
                      • +
                        Optional value?: bigint
                    +

                    Returns Promise<`0x${string}`>

              +
              + +
              parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                  stateMutability: "nonpayable";
                  type: "constructor";
                  inputs: readonly [{
                      name: "liquidationDistributor";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "currencyManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "collectionManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "AddressZeroError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "AuctionAlreadyInProgressError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionNotOverError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionOverError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CollectionNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CouldNotModifyValidLoansError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CurrencyNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "InvalidHashAuctionError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "InvalidTriggerFee";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_loan";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "LoanNotAcceptedError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_minBid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "MinBidError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_owner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "NFTNotOwnedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "NoBidsError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "ZeroAddressError";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loanContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "auctionContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "proceeds";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "settler";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "AuctionSettled";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "collection";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "newBidder";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "bid";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "BidPlaced";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "liquidationDistributor";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LiquidationDistributorUpdated";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractAdded";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractRemoved";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "collection";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      indexed: false;
                  }];
                  name: "LoanLiquidationStarted";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "user";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }, {
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }];
                  name: "OwnershipTransferred";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "TriggerFeeUpdated";
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "MAX_TRIGGER_FEE";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "MIN_INCREMENT_BPS";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "addLoanContract";
                  outputs: readonly [];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "getAuctionHash";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes32";
                      type: "bytes32";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getLiquidationDistributor";
                  outputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getTriggerFee";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "getValidLoanContracts";
                  outputs: readonly [{
                      name: "";
                      internalType: "address[]";
                      type: "address[]";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "_originator";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "liquidateLoan";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes";
                      type: "bytes";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "";
                      internalType: "bytes";
                      type: "bytes";
                  }];
                  name: "onERC721Received";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes4";
                      type: "bytes4";
                  }];
              }, {
                  stateMutability: "view";
                  type: "function";
                  inputs: readonly [];
                  name: "owner";
                  outputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_contract";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }, {
                      name: "_bid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "placeBid";
                  outputs: readonly [{
                      name: "";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "removeLoanContract";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "_auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }, {
                      name: "_loan";
                      internalType: "struct IMultiSourceLoan.Loan";
                      type: "tuple";
                      components: readonly [{
                          name: "borrower";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "nftCollateralTokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "nftCollateralAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "principalAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "principalAmount";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "startTime";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "duration";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "source";
                          internalType: "struct IMultiSourceLoan.Source[]";
                          type: "tuple[]";
                          components: readonly [{
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "lender";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "accruedInterest";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "aprBps";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                      }];
                  }];
                  name: "settleAuction";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "transferOwnership";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "__liquidationDistributor";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "updateLiquidationDistributor";
                  outputs: readonly [];
              }, {
                  stateMutability: "nonpayable";
                  type: "function";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "updateTriggerFee";
                  outputs: readonly [];
              }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated")[]
                  ? TFunctionName[number]
                  : TFunctionName>)
              +
              +

              Type declaration

              +
                +
              • +
                  +
                • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                      stateMutability: "nonpayable";
                      type: "constructor";
                      inputs: readonly [{
                          name: "liquidationDistributor";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "currencyManager";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "collectionManager";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "AddressZeroError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "AuctionAlreadyInProgressError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_expiration";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      name: "AuctionNotOverError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_expiration";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      name: "AuctionOverError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CollectionNotWhitelistedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CouldNotModifyValidLoansError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CurrencyNotWhitelistedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "InvalidHashAuctionError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "InvalidTriggerFee";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_loan";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "LoanNotAcceptedError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "MinBidError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_owner";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "NFTNotOwnedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "NoBidsError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "ZeroAddressError";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loanContract";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "auctionContract";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "proceeds";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "settler";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "AuctionSettled";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "newBidder";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "bid";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "BidPlaced";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "liquidationDistributor";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LiquidationDistributorUpdated";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loan";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LoanContractAdded";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loan";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LoanContractRemoved";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          indexed: false;
                      }];
                      name: "LoanLiquidationStarted";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "user";
                          internalType: "address";
                          type: "address";
                          indexed: true;
                      }, {
                          name: "newOwner";
                          internalType: "address";
                          type: "address";
                          indexed: true;
                      }];
                      name: "OwnershipTransferred";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "TriggerFeeUpdated";
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "MAX_TRIGGER_FEE";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "MIN_INCREMENT_BPS";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_loanContract";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "addLoanContract";
                      outputs: readonly [];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [{
                          name: "_contract";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "getAuctionHash";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes32";
                          type: "bytes32";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "getLiquidationDistributor";
                      outputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "getTriggerFee";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "getValidLoanContracts";
                      outputs: readonly [{
                          name: "";
                          internalType: "address[]";
                          type: "address[]";
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_contract";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "_originator";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "liquidateLoan";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes";
                          type: "bytes";
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "";
                          internalType: "bytes";
                          type: "bytes";
                      }];
                      name: "onERC721Received";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes4";
                          type: "bytes4";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "owner";
                      outputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_contract";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_bid";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "placeBid";
                      outputs: readonly [{
                          name: "";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_loanContract";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "removeLoanContract";
                      outputs: readonly [];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_loan";
                          internalType: "struct IMultiSourceLoan.Loan";
                          type: "tuple";
                          components: readonly [{
                              name: "borrower";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "nftCollateralTokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "nftCollateralAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "duration";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "source";
                              internalType: "struct IMultiSourceLoan.Source[]";
                              type: "tuple[]";
                              components: readonly [{
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "lender";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "accruedInterest";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "aprBps";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }];
                      }];
                      name: "settleAuction";
                      outputs: readonly [];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "newOwner";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "transferOwnership";
                      outputs: readonly [];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "__liquidationDistributor";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "updateLiquidationDistributor";
                      outputs: readonly [];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "updateTriggerFee";
                      outputs: readonly [];
                  }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated")[]
                      ? TFunctionName[number]
                      : TFunctionName>
                • +
                • +
                  +

                  Type Parameters

                  +
                    +
                  • +

                    TFunctionName extends "OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated"

                  +
                  +

                  Parameters

                  +
                    +
                  • +
                    eventName: TFunctionName
                  • +
                  • +
                    logs: Log<bigint, number, false>[]
                  +

                  Returns ParseEventLogsReturnType<readonly [{
                      stateMutability: "nonpayable";
                      type: "constructor";
                      inputs: readonly [{
                          name: "liquidationDistributor";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "currencyManager";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "collectionManager";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "AddressZeroError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "AuctionAlreadyInProgressError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_expiration";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      name: "AuctionNotOverError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_expiration";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      name: "AuctionOverError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CollectionNotWhitelistedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CouldNotModifyValidLoansError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CurrencyNotWhitelistedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "InvalidHashAuctionError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "InvalidTriggerFee";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_loan";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "LoanNotAcceptedError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "MinBidError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_owner";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "NFTNotOwnedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "NoBidsError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "ZeroAddressError";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loanContract";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "auctionContract";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "proceeds";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "settler";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "AuctionSettled";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "newBidder";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "bid";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "BidPlaced";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "liquidationDistributor";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LiquidationDistributorUpdated";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loan";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LoanContractAdded";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loan";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LoanContractRemoved";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          indexed: false;
                      }];
                      name: "LoanLiquidationStarted";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "user";
                          internalType: "address";
                          type: "address";
                          indexed: true;
                      }, {
                          name: "newOwner";
                          internalType: "address";
                          type: "address";
                          indexed: true;
                      }];
                      name: "OwnershipTransferred";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "TriggerFeeUpdated";
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "MAX_TRIGGER_FEE";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "MIN_INCREMENT_BPS";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_loanContract";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "addLoanContract";
                      outputs: readonly [];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [{
                          name: "_contract";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "getAuctionHash";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes32";
                          type: "bytes32";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "getLiquidationDistributor";
                      outputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "getTriggerFee";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "getValidLoanContracts";
                      outputs: readonly [{
                          name: "";
                          internalType: "address[]";
                          type: "address[]";
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_contract";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "_originator";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "liquidateLoan";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes";
                          type: "bytes";
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "";
                          internalType: "bytes";
                          type: "bytes";
                      }];
                      name: "onERC721Received";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes4";
                          type: "bytes4";
                      }];
                  }, {
                      stateMutability: "view";
                      type: "function";
                      inputs: readonly [];
                      name: "owner";
                      outputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_contract";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_bid";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "placeBid";
                      outputs: readonly [{
                          name: "";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_loanContract";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "removeLoanContract";
                      outputs: readonly [];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_loan";
                          internalType: "struct IMultiSourceLoan.Loan";
                          type: "tuple";
                          components: readonly [{
                              name: "borrower";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "nftCollateralTokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "nftCollateralAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "duration";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "source";
                              internalType: "struct IMultiSourceLoan.Source[]";
                              type: "tuple[]";
                              components: readonly [{
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "lender";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "accruedInterest";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "aprBps";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }];
                      }];
                      name: "settleAuction";
                      outputs: readonly [];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "newOwner";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "transferOwnership";
                      outputs: readonly [];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "__liquidationDistributor";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "updateLiquidationDistributor";
                      outputs: readonly [];
                  }, {
                      stateMutability: "nonpayable";
                      type: "function";
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "updateTriggerFee";
                      outputs: readonly [];
                  }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated")[]
                      ? TFunctionName[number]
                      : TFunctionName>

              +
              + +
              +
              \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.AllV6.html b/docs/0.17.2/classes/Internal.AllV6.html new file mode 100644 index 00000000..aad9533a --- /dev/null +++ b/docs/0.17.2/classes/Internal.AllV6.html @@ -0,0 +1,611 @@ +AllV6 | Gondi JS SDK - v0.17.2
              +
              + +
              +
              +
              +
              + +

              Class AllV6

              +
              +

              Hierarchy

              +
              +
              +
              +
              + +
              +
              +

              Constructors

              +
              + +
              +
              +

              Methods

              +
              + +
                + +
              • +
                +

                Parameters

                +
                  +
                • +
                  __namedParameters: {
                      collectionContractAddress: `0x${string}`;
                      tokenId: bigint;
                      bid: bigint;
                      auction: Auction;
                  }
                  +
                    +
                  • +
                    collectionContractAddress: `0x${string}`
                  • +
                  • +
                    tokenId: bigint
                  • +
                  • +
                    bid: bigint
                  • +
                  • +
                    auction: Auction
                +

                Returns Promise<{
                    txHash: `0x${string}`;
                    waitTxInBlock: (() => Promise<{
                        collection: `0x${string}`;
                        tokenId: bigint;
                        newBidder: `0x${string}`;
                        bid: bigint;
                        loanAddress: `0x${string}`;
                        loanId: bigint;
                    }>);
                }>

              +
              + +
                + +
              • +
                +

                Parameters

                +
                  +
                • +
                  __namedParameters: {
                      auction: Auction;
                  }
                  +
                +

                Returns Promise<number>

              +
              + +
                + +
              • +
                +

                Parameters

                +
                +

                Returns Promise<{
                    txHash: `0x${string}`;
                    waitTxInBlock: (() => Promise<{
                        loanAddress: `0x${string}`;
                        loanId: bigint;
                        nftAddress: `0x${string}`;
                        tokenId: bigint;
                        largestTrancheIdx: bigint;
                    }>);
                }>

              +
              + +
                + +
              • +
                +

                Parameters

                +
                +

                Returns Promise<{
                    txHash: `0x${string}`;
                    waitTxInBlock: (() => Promise<{
                        loanContract: `0x${string}`;
                        loanId: bigint;
                        collection: `0x${string}`;
                        tokenId: bigint;
                        asset: `0x${string}`;
                        proceeds: bigint;
                        settler: `0x${string}`;
                        triggerFee: bigint;
                    }>);
                }>

              +
              + +
                + +
              • +
                +

                Parameters

                +
                  +
                • +
                  data: `0x${string}`
                +

                Returns Promise<{
                    txHash: `0x${string}`;
                    waitTxInBlock: (() => Promise<TransactionReceipt>);
                }>

              +
              +

              Properties

              +
              + +
              abi: readonly [{
                  type: "constructor";
                  inputs: readonly [{
                      name: "liquidationDistributor";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "currencyManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "collectionManager";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "loanManagerRegistry";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "maxExtension";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "timeForMainLenderToBuy";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  stateMutability: "nonpayable";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "AddressZeroError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "AuctionAlreadyInProgressError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionNotOverError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_expiration";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  name: "AuctionOverError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CollectionNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CouldNotModifyValidLoansError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "CurrencyNotWhitelistedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "InvalidHashAuctionError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "InvalidInputError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "InvalidTriggerFee";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_loan";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "LoanNotAcceptedError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_minBid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "MinBidError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "_owner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "NFTNotOwnedError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "NoBidsError";
              }, {
                  type: "error";
                  inputs: readonly [];
                  name: "NotMainLenderError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "timeLimit";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "OptionToBuyExpiredError";
              }, {
                  type: "error";
                  inputs: readonly [{
                      name: "timeLimit";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "OptionToBuyStilValidError";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loanContract";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "collection";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "asset";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "proceeds";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "settler";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "AuctionSettled";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "nftAddress";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "largestTrancheIdx";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "AuctionSettledWithBuyout";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "collection";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "newBidder";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "bid";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "loanAddress";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "loanId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "BidPlaced";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "liquidationDistributor";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LiquidationDistributorUpdated";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractAdded";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "loan";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }];
                  name: "LoanContractRemoved";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "collection";
                      internalType: "address";
                      type: "address";
                      indexed: false;
                  }, {
                      name: "tokenId";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }, {
                      name: "auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      indexed: false;
                  }];
                  name: "LoanLiquidationStarted";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "user";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }, {
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                      indexed: true;
                  }];
                  name: "OwnershipTransferred";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "timeForMainLenderToBuy";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "TimeForMainLenderToBuyUpdated";
              }, {
                  type: "event";
                  anonymous: false;
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                      indexed: false;
                  }];
                  name: "TriggerFeeUpdated";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "MAX_TRIGGER_FEE";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "MIN_INCREMENT_BPS";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "addLoanContract";
                  outputs: readonly [];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "_nftAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "getAuctionHash";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes32";
                      type: "bytes32";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "getLiquidationDistributor";
                  outputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "getLoanManagerRegistry";
                  outputs: readonly [{
                      name: "";
                      internalType: "contract ILoanManagerRegistry";
                      type: "address";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "getMaxExtension";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint96";
                      type: "uint96";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "getTimeForMainLenderToBuy";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "getTriggerFee";
                  outputs: readonly [{
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "getValidLoanContracts";
                  outputs: readonly [{
                      name: "";
                      internalType: "address[]";
                      type: "address[]";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "_loanId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_nftAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_asset";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_duration";
                      internalType: "uint96";
                      type: "uint96";
                  }, {
                      name: "_minBid";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_originator";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "liquidateLoan";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes";
                      type: "bytes";
                  }];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "";
                      internalType: "bytes";
                      type: "bytes";
                  }];
                  name: "onERC721Received";
                  outputs: readonly [{
                      name: "";
                      internalType: "bytes4";
                      type: "bytes4";
                  }];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [];
                  name: "owner";
                  outputs: readonly [{
                      name: "";
                      internalType: "address";
                      type: "address";
                  }];
                  stateMutability: "view";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "_nftAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }, {
                      name: "_bid";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "placeBid";
                  outputs: readonly [{
                      name: "";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "_loanContract";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "removeLoanContract";
                  outputs: readonly [];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "__timeForMainLenderToBuy";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "setTimeForMainLenderToBuy";
                  outputs: readonly [];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "_auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }, {
                      name: "_loan";
                      internalType: "struct IMultiSourceLoan.Loan";
                      type: "tuple";
                      components: readonly [{
                          name: "borrower";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "nftCollateralTokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "nftCollateralAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "principalAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "principalAmount";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "startTime";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "duration";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "tranche";
                          internalType: "struct IMultiSourceLoan.Tranche[]";
                          type: "tuple[]";
                          components: readonly [{
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "floor";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "lender";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "accruedInterest";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "aprBps";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                      }, {
                          name: "protocolFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }];
                  name: "settleAuction";
                  outputs: readonly [];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "_nftAddress";
                      internalType: "address";
                      type: "address";
                  }, {
                      name: "_tokenId";
                      internalType: "uint256";
                      type: "uint256";
                  }, {
                      name: "_auction";
                      internalType: "struct IAuctionLoanLiquidator.Auction";
                      type: "tuple";
                      components: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "highestBidder";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "startTime";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "originator";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "lastBidTime";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                  }, {
                      name: "_loan";
                      internalType: "struct IMultiSourceLoan.Loan";
                      type: "tuple";
                      components: readonly [{
                          name: "borrower";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "nftCollateralTokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "nftCollateralAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "principalAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "principalAmount";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "startTime";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "duration";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "tranche";
                          internalType: "struct IMultiSourceLoan.Tranche[]";
                          type: "tuple[]";
                          components: readonly [{
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "floor";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "lender";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "accruedInterest";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "aprBps";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                      }, {
                          name: "protocolFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                  }];
                  name: "settleWithBuyout";
                  outputs: readonly [];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "newOwner";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "transferOwnership";
                  outputs: readonly [];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "__liquidationDistributor";
                      internalType: "address";
                      type: "address";
                  }];
                  name: "updateLiquidationDistributor";
                  outputs: readonly [];
                  stateMutability: "nonpayable";
              }, {
                  type: "function";
                  inputs: readonly [{
                      name: "triggerFee";
                      internalType: "uint256";
                      type: "uint256";
                  }];
                  name: "updateTriggerFee";
                  outputs: readonly [];
                  stateMutability: "nonpayable";
              }]
              +
              + +
              address: `0x${string}`
              +
              + +
              bcClient: {}
              +
              +

              Type declaration

              +
                +
                + +
                wallet: {}
                +
                +

                Type declaration

                +
                  +
                  + +
                  contract: GetContractReturnType<readonly [{
                      type: "constructor";
                      inputs: readonly [{
                          name: "liquidationDistributor";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "currencyManager";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "collectionManager";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanManagerRegistry";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "maxExtension";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "timeForMainLenderToBuy";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "nonpayable";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "AddressZeroError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "AuctionAlreadyInProgressError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_expiration";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      name: "AuctionNotOverError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_expiration";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      name: "AuctionOverError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CollectionNotWhitelistedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CouldNotModifyValidLoansError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CurrencyNotWhitelistedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "InvalidHashAuctionError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "InvalidInputError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "InvalidTriggerFee";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_loan";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "LoanNotAcceptedError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "MinBidError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_owner";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "NFTNotOwnedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "NoBidsError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "NotMainLenderError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "timeLimit";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "OptionToBuyExpiredError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "timeLimit";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "OptionToBuyStilValidError";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loanContract";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "proceeds";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "settler";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "AuctionSettled";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "nftAddress";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "largestTrancheIdx";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "AuctionSettledWithBuyout";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "newBidder";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "bid";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "BidPlaced";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "liquidationDistributor";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LiquidationDistributorUpdated";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loan";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LoanContractAdded";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loan";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LoanContractRemoved";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          indexed: false;
                      }];
                      name: "LoanLiquidationStarted";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "user";
                          internalType: "address";
                          type: "address";
                          indexed: true;
                      }, {
                          name: "newOwner";
                          internalType: "address";
                          type: "address";
                          indexed: true;
                      }];
                      name: "OwnershipTransferred";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "timeForMainLenderToBuy";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "TimeForMainLenderToBuyUpdated";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "TriggerFeeUpdated";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "MAX_TRIGGER_FEE";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "MIN_INCREMENT_BPS";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_loanContract";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "addLoanContract";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_nftAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "getAuctionHash";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes32";
                          type: "bytes32";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getLiquidationDistributor";
                      outputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getLoanManagerRegistry";
                      outputs: readonly [{
                          name: "";
                          internalType: "contract ILoanManagerRegistry";
                          type: "address";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getMaxExtension";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getTimeForMainLenderToBuy";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getTriggerFee";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getValidLoanContracts";
                      outputs: readonly [{
                          name: "";
                          internalType: "address[]";
                          type: "address[]";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_nftAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "_minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_originator";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "liquidateLoan";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes";
                          type: "bytes";
                      }];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "";
                          internalType: "bytes";
                          type: "bytes";
                      }];
                      name: "onERC721Received";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes4";
                          type: "bytes4";
                      }];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "owner";
                      outputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_nftAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_bid";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "placeBid";
                      outputs: readonly [{
                          name: "";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_loanContract";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "removeLoanContract";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "__timeForMainLenderToBuy";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "setTimeForMainLenderToBuy";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_loan";
                          internalType: "struct IMultiSourceLoan.Loan";
                          type: "tuple";
                          components: readonly [{
                              name: "borrower";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "nftCollateralTokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "nftCollateralAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "duration";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "tranche";
                              internalType: "struct IMultiSourceLoan.Tranche[]";
                              type: "tuple[]";
                              components: readonly [{
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "floor";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "lender";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "accruedInterest";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "aprBps";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }, {
                              name: "protocolFee";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                      }];
                      name: "settleAuction";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_nftAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_loan";
                          internalType: "struct IMultiSourceLoan.Loan";
                          type: "tuple";
                          components: readonly [{
                              name: "borrower";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "nftCollateralTokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "nftCollateralAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "duration";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "tranche";
                              internalType: "struct IMultiSourceLoan.Tranche[]";
                              type: "tuple[]";
                              components: readonly [{
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "floor";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "lender";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "accruedInterest";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "aprBps";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }, {
                              name: "protocolFee";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                      }];
                      name: "settleWithBuyout";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "newOwner";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "transferOwnership";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "__liquidationDistributor";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "updateLiquidationDistributor";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "updateTriggerFee";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }], {} | {}>
                  +
                  + +
                  safeContractWrite: {
                      transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                      addLoanContract: ((args, options?) => Promise<`0x${string}`>);
                      liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                      onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                      placeBid: ((args, options?) => Promise<`0x${string}`>);
                      removeLoanContract: ((args, options?) => Promise<`0x${string}`>);
                      settleAuction: ((args, options?) => Promise<`0x${string}`>);
                      updateTriggerFee: ((args, options?) => Promise<`0x${string}`>);
                      updateLiquidationDistributor: ((args, options?) => Promise<`0x${string}`>);
                      setTimeForMainLenderToBuy: ((args, options?) => Promise<`0x${string}`>);
                      settleWithBuyout: ((args, options?) => Promise<`0x${string}`>);
                  }
                  +
                  +

                  Type declaration

                  +
                    +
                  • +
                    transferOwnership: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [`0x${string}`]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    addLoanContract: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [`0x${string}`]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    liquidateLoan: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [bigint, `0x${string}`, bigint, `0x${string}`, bigint, bigint, `0x${string}`]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    onERC721Received: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    placeBid: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [`0x${string}`, bigint, {
                              loanAddress: `0x${string}`;
                              loanId: bigint;
                              highestBid: bigint;
                              triggerFee: bigint;
                              minBid: bigint;
                              highestBidder: `0x${string}`;
                              duration: bigint;
                              asset: `0x${string}`;
                              startTime: bigint;
                              originator: `0x${string}`;
                              lastBidTime: bigint;
                          }, bigint] | readonly [`0x${string}`, bigint, {
                              loanAddress: `0x${string}`;
                              loanId: bigint;
                              highestBid: bigint;
                              triggerFee: bigint;
                              minBid: bigint;
                              highestBidder: `0x${string}`;
                              duration: bigint;
                              asset: `0x${string}`;
                              startTime: bigint;
                              originator: `0x${string}`;
                              lastBidTime: bigint;
                          }, bigint] & readonly [`0x${string}`, bigint, {
                              loanAddress: `0x${string}`;
                              loanId: bigint;
                              highestBid: bigint;
                              triggerFee: bigint;
                              minBid: bigint;
                              highestBidder: `0x${string}`;
                              duration: bigint;
                              asset: `0x${string}`;
                              startTime: bigint;
                              originator: `0x${string}`;
                              lastBidTime: bigint;
                          }, bigint]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    removeLoanContract: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [`0x${string}`]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    settleAuction: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [{
                              loanAddress: `0x${string}`;
                              loanId: bigint;
                              highestBid: bigint;
                              triggerFee: bigint;
                              minBid: bigint;
                              highestBidder: `0x${string}`;
                              duration: bigint;
                              asset: `0x${string}`;
                              startTime: bigint;
                              originator: `0x${string}`;
                              lastBidTime: bigint;
                          }, {
                              borrower: `0x${string}`;
                              nftCollateralTokenId: bigint;
                              nftCollateralAddress: `0x${string}`;
                              principalAddress: `0x${string}`;
                              principalAmount: bigint;
                              startTime: bigint;
                              duration: bigint;
                              tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                              protocolFee: bigint;
                          }] | readonly [{
                              loanAddress: `0x${string}`;
                              loanId: bigint;
                              highestBid: bigint;
                              triggerFee: bigint;
                              minBid: bigint;
                              highestBidder: `0x${string}`;
                              duration: bigint;
                              asset: `0x${string}`;
                              startTime: bigint;
                              originator: `0x${string}`;
                              lastBidTime: bigint;
                          }, {
                              borrower: `0x${string}`;
                              nftCollateralTokenId: bigint;
                              nftCollateralAddress: `0x${string}`;
                              principalAddress: `0x${string}`;
                              principalAmount: bigint;
                              startTime: bigint;
                              duration: bigint;
                              tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                              protocolFee: bigint;
                          }] & readonly [{
                              loanAddress: `0x${string}`;
                              loanId: bigint;
                              highestBid: bigint;
                              triggerFee: bigint;
                              minBid: bigint;
                              highestBidder: `0x${string}`;
                              duration: bigint;
                              asset: `0x${string}`;
                              startTime: bigint;
                              originator: `0x${string}`;
                              lastBidTime: bigint;
                          }, {
                              borrower: `0x${string}`;
                              nftCollateralTokenId: bigint;
                              nftCollateralAddress: `0x${string}`;
                              principalAddress: `0x${string}`;
                              principalAmount: bigint;
                              startTime: bigint;
                              duration: bigint;
                              tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                              protocolFee: bigint;
                          }]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    updateTriggerFee: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [bigint]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    updateLiquidationDistributor: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [`0x${string}`]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    setTimeForMainLenderToBuy: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [bigint]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  • +
                  • +
                    settleWithBuyout: ((args, options?) => Promise<`0x${string}`>)
                    +
                      +
                    • +
                        +
                      • (args, options?): Promise<`0x${string}`>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          args: readonly [`0x${string}`, bigint, {
                              loanAddress: `0x${string}`;
                              loanId: bigint;
                              highestBid: bigint;
                              triggerFee: bigint;
                              minBid: bigint;
                              highestBidder: `0x${string}`;
                              duration: bigint;
                              asset: `0x${string}`;
                              startTime: bigint;
                              originator: `0x${string}`;
                              lastBidTime: bigint;
                          }, {
                              borrower: `0x${string}`;
                              nftCollateralTokenId: bigint;
                              nftCollateralAddress: `0x${string}`;
                              principalAddress: `0x${string}`;
                              principalAmount: bigint;
                              startTime: bigint;
                              duration: bigint;
                              tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                              protocolFee: bigint;
                          }] | readonly [`0x${string}`, bigint, {
                              loanAddress: `0x${string}`;
                              loanId: bigint;
                              highestBid: bigint;
                              triggerFee: bigint;
                              minBid: bigint;
                              highestBidder: `0x${string}`;
                              duration: bigint;
                              asset: `0x${string}`;
                              startTime: bigint;
                              originator: `0x${string}`;
                              lastBidTime: bigint;
                          }, {
                              borrower: `0x${string}`;
                              nftCollateralTokenId: bigint;
                              nftCollateralAddress: `0x${string}`;
                              principalAddress: `0x${string}`;
                              principalAmount: bigint;
                              startTime: bigint;
                              duration: bigint;
                              tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                              protocolFee: bigint;
                          }] & readonly [`0x${string}`, bigint, {
                              loanAddress: `0x${string}`;
                              loanId: bigint;
                              highestBid: bigint;
                              triggerFee: bigint;
                              minBid: bigint;
                              highestBidder: `0x${string}`;
                              duration: bigint;
                              asset: `0x${string}`;
                              startTime: bigint;
                              originator: `0x${string}`;
                              lastBidTime: bigint;
                          }, {
                              borrower: `0x${string}`;
                              nftCollateralTokenId: bigint;
                              nftCollateralAddress: `0x${string}`;
                              principalAddress: `0x${string}`;
                              principalAmount: bigint;
                              startTime: bigint;
                              duration: bigint;
                              tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                              protocolFee: bigint;
                          }]
                        • +
                        • +
                          Optional options: {
                              value?: bigint;
                          }
                          +
                            +
                          • +
                            Optional value?: bigint
                        +

                        Returns Promise<`0x${string}`>

                  +
                  + +
                  parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                      type: "constructor";
                      inputs: readonly [{
                          name: "liquidationDistributor";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "currencyManager";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "collectionManager";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "loanManagerRegistry";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "maxExtension";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "timeForMainLenderToBuy";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "nonpayable";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "AddressZeroError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "AuctionAlreadyInProgressError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_expiration";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      name: "AuctionNotOverError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_expiration";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      name: "AuctionOverError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CollectionNotWhitelistedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CouldNotModifyValidLoansError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "CurrencyNotWhitelistedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "InvalidHashAuctionError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "InvalidInputError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "InvalidTriggerFee";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_loan";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "LoanNotAcceptedError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "MinBidError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "_owner";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "NFTNotOwnedError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "NoBidsError";
                  }, {
                      type: "error";
                      inputs: readonly [];
                      name: "NotMainLenderError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "timeLimit";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "OptionToBuyExpiredError";
                  }, {
                      type: "error";
                      inputs: readonly [{
                          name: "timeLimit";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "OptionToBuyStilValidError";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loanContract";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "asset";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "proceeds";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "settler";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "AuctionSettled";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "nftAddress";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "largestTrancheIdx";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "AuctionSettledWithBuyout";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "newBidder";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "bid";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "loanAddress";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "loanId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "BidPlaced";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "liquidationDistributor";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LiquidationDistributorUpdated";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loan";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LoanContractAdded";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "loan";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }];
                      name: "LoanContractRemoved";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "collection";
                          internalType: "address";
                          type: "address";
                          indexed: false;
                      }, {
                          name: "tokenId";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }, {
                          name: "auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          indexed: false;
                      }];
                      name: "LoanLiquidationStarted";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "user";
                          internalType: "address";
                          type: "address";
                          indexed: true;
                      }, {
                          name: "newOwner";
                          internalType: "address";
                          type: "address";
                          indexed: true;
                      }];
                      name: "OwnershipTransferred";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "timeForMainLenderToBuy";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "TimeForMainLenderToBuyUpdated";
                  }, {
                      type: "event";
                      anonymous: false;
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                          indexed: false;
                      }];
                      name: "TriggerFeeUpdated";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "MAX_TRIGGER_FEE";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "MIN_INCREMENT_BPS";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_loanContract";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "addLoanContract";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_nftAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "getAuctionHash";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes32";
                          type: "bytes32";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getLiquidationDistributor";
                      outputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getLoanManagerRegistry";
                      outputs: readonly [{
                          name: "";
                          internalType: "contract ILoanManagerRegistry";
                          type: "address";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getMaxExtension";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint96";
                          type: "uint96";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getTimeForMainLenderToBuy";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getTriggerFee";
                      outputs: readonly [{
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "getValidLoanContracts";
                      outputs: readonly [{
                          name: "";
                          internalType: "address[]";
                          type: "address[]";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_loanId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_nftAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_asset";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_duration";
                          internalType: "uint96";
                          type: "uint96";
                      }, {
                          name: "_minBid";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_originator";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "liquidateLoan";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes";
                          type: "bytes";
                      }];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "";
                          internalType: "bytes";
                          type: "bytes";
                      }];
                      name: "onERC721Received";
                      outputs: readonly [{
                          name: "";
                          internalType: "bytes4";
                          type: "bytes4";
                      }];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [];
                      name: "owner";
                      outputs: readonly [{
                          name: "";
                          internalType: "address";
                          type: "address";
                      }];
                      stateMutability: "view";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_nftAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_bid";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "placeBid";
                      outputs: readonly [{
                          name: "";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_loanContract";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "removeLoanContract";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "__timeForMainLenderToBuy";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "setTimeForMainLenderToBuy";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_loan";
                          internalType: "struct IMultiSourceLoan.Loan";
                          type: "tuple";
                          components: readonly [{
                              name: "borrower";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "nftCollateralTokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "nftCollateralAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "duration";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "tranche";
                              internalType: "struct IMultiSourceLoan.Tranche[]";
                              type: "tuple[]";
                              components: readonly [{
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "floor";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "lender";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "accruedInterest";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "aprBps";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }, {
                              name: "protocolFee";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                      }];
                      name: "settleAuction";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "_nftAddress";
                          internalType: "address";
                          type: "address";
                      }, {
                          name: "_tokenId";
                          internalType: "uint256";
                          type: "uint256";
                      }, {
                          name: "_auction";
                          internalType: "struct IAuctionLoanLiquidator.Auction";
                          type: "tuple";
                          components: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "highestBidder";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "startTime";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "originator";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "lastBidTime";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                      }, {
                          name: "_loan";
                          internalType: "struct IMultiSourceLoan.Loan";
                          type: "tuple";
                          components: readonly [{
                              name: "borrower";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "nftCollateralTokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "nftCollateralAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "principalAmount";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "startTime";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "duration";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "tranche";
                              internalType: "struct IMultiSourceLoan.Tranche[]";
                              type: "tuple[]";
                              components: readonly [{
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "floor";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "lender";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "accruedInterest";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "aprBps";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }, {
                              name: "protocolFee";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                      }];
                      name: "settleWithBuyout";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "newOwner";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "transferOwnership";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "__liquidationDistributor";
                          internalType: "address";
                          type: "address";
                      }];
                      name: "updateLiquidationDistributor";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }, {
                      type: "function";
                      inputs: readonly [{
                          name: "triggerFee";
                          internalType: "uint256";
                          type: "uint256";
                      }];
                      name: "updateTriggerFee";
                      outputs: readonly [];
                      stateMutability: "nonpayable";
                  }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated" | "AuctionSettledWithBuyout" | "TimeForMainLenderToBuyUpdated")[]
                      ? TFunctionName[number]
                      : TFunctionName>)
                  +
                  +

                  Type declaration

                  +
                    +
                  • +
                      +
                    • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                          type: "constructor";
                          inputs: readonly [{
                              name: "liquidationDistributor";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "currencyManager";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "collectionManager";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanManagerRegistry";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "maxExtension";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "timeForMainLenderToBuy";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "nonpayable";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "AddressZeroError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "AuctionAlreadyInProgressError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_expiration";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          name: "AuctionNotOverError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_expiration";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          name: "AuctionOverError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "CollectionNotWhitelistedError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "CouldNotModifyValidLoansError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "CurrencyNotWhitelistedError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "InvalidHashAuctionError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "InvalidInputError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "InvalidTriggerFee";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_loan";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "LoanNotAcceptedError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "MinBidError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_owner";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "NFTNotOwnedError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "NoBidsError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "NotMainLenderError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "timeLimit";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "OptionToBuyExpiredError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "timeLimit";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "OptionToBuyStilValidError";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "loanContract";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "collection";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "tokenId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "proceeds";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "settler";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "AuctionSettled";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "nftAddress";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "tokenId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "largestTrancheIdx";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "AuctionSettledWithBuyout";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "collection";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "tokenId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "newBidder";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "bid";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "BidPlaced";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "liquidationDistributor";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }];
                          name: "LiquidationDistributorUpdated";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "loan";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }];
                          name: "LoanContractAdded";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "loan";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }];
                          name: "LoanContractRemoved";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "collection";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "tokenId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "auction";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                              indexed: false;
                          }];
                          name: "LoanLiquidationStarted";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "user";
                              internalType: "address";
                              type: "address";
                              indexed: true;
                          }, {
                              name: "newOwner";
                              internalType: "address";
                              type: "address";
                              indexed: true;
                          }];
                          name: "OwnershipTransferred";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "timeForMainLenderToBuy";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "TimeForMainLenderToBuyUpdated";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "TriggerFeeUpdated";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "MAX_TRIGGER_FEE";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "MIN_INCREMENT_BPS";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_loanContract";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "addLoanContract";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_nftAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_tokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "getAuctionHash";
                          outputs: readonly [{
                              name: "";
                              internalType: "bytes32";
                              type: "bytes32";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getLiquidationDistributor";
                          outputs: readonly [{
                              name: "";
                              internalType: "address";
                              type: "address";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getLoanManagerRegistry";
                          outputs: readonly [{
                              name: "";
                              internalType: "contract ILoanManagerRegistry";
                              type: "address";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getMaxExtension";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getTimeForMainLenderToBuy";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getTriggerFee";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getValidLoanContracts";
                          outputs: readonly [{
                              name: "";
                              internalType: "address[]";
                              type: "address[]";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_nftAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_tokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "_minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_originator";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "liquidateLoan";
                          outputs: readonly [{
                              name: "";
                              internalType: "bytes";
                              type: "bytes";
                          }];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "";
                              internalType: "bytes";
                              type: "bytes";
                          }];
                          name: "onERC721Received";
                          outputs: readonly [{
                              name: "";
                              internalType: "bytes4";
                              type: "bytes4";
                          }];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "owner";
                          outputs: readonly [{
                              name: "";
                              internalType: "address";
                              type: "address";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_nftAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_tokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_auction";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                          }, {
                              name: "_bid";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "placeBid";
                          outputs: readonly [{
                              name: "";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                          }];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_loanContract";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "removeLoanContract";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "__timeForMainLenderToBuy";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "setTimeForMainLenderToBuy";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_auction";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                          }, {
                              name: "_loan";
                              internalType: "struct IMultiSourceLoan.Loan";
                              type: "tuple";
                              components: readonly [{
                                  name: "borrower";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "nftCollateralTokenId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "nftCollateralAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "duration";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "tranche";
                                  internalType: "struct IMultiSourceLoan.Tranche[]";
                                  type: "tuple[]";
                                  components: readonly [{
                                      name: "loanId";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "floor";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "principalAmount";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "lender";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "accruedInterest";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "startTime";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "aprBps";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                              }, {
                                  name: "protocolFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }];
                          name: "settleAuction";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_nftAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_tokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_auction";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                          }, {
                              name: "_loan";
                              internalType: "struct IMultiSourceLoan.Loan";
                              type: "tuple";
                              components: readonly [{
                                  name: "borrower";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "nftCollateralTokenId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "nftCollateralAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "duration";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "tranche";
                                  internalType: "struct IMultiSourceLoan.Tranche[]";
                                  type: "tuple[]";
                                  components: readonly [{
                                      name: "loanId";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "floor";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "principalAmount";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "lender";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "accruedInterest";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "startTime";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "aprBps";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                              }, {
                                  name: "protocolFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }];
                          name: "settleWithBuyout";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "newOwner";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "transferOwnership";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "__liquidationDistributor";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "updateLiquidationDistributor";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "updateTriggerFee";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated" | "AuctionSettledWithBuyout" | "TimeForMainLenderToBuyUpdated")[]
                          ? TFunctionName[number]
                          : TFunctionName>
                    • +
                    • +
                      +

                      Type Parameters

                      +
                        +
                      • +

                        TFunctionName extends "OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated" | "AuctionSettledWithBuyout" | "TimeForMainLenderToBuyUpdated"

                      +
                      +

                      Parameters

                      +
                        +
                      • +
                        eventName: TFunctionName
                      • +
                      • +
                        logs: Log<bigint, number, false>[]
                      +

                      Returns ParseEventLogsReturnType<readonly [{
                          type: "constructor";
                          inputs: readonly [{
                              name: "liquidationDistributor";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "currencyManager";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "collectionManager";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "loanManagerRegistry";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "maxExtension";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "timeForMainLenderToBuy";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "nonpayable";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "AddressZeroError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "AuctionAlreadyInProgressError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_expiration";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          name: "AuctionNotOverError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_expiration";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          name: "AuctionOverError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "CollectionNotWhitelistedError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "CouldNotModifyValidLoansError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "CurrencyNotWhitelistedError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "InvalidHashAuctionError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "InvalidInputError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "InvalidTriggerFee";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_loan";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "LoanNotAcceptedError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "MinBidError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "_owner";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "NFTNotOwnedError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "NoBidsError";
                      }, {
                          type: "error";
                          inputs: readonly [];
                          name: "NotMainLenderError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "timeLimit";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "OptionToBuyExpiredError";
                      }, {
                          type: "error";
                          inputs: readonly [{
                              name: "timeLimit";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "OptionToBuyStilValidError";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "loanContract";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "collection";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "tokenId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "asset";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "proceeds";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "settler";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "AuctionSettled";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "nftAddress";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "tokenId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "largestTrancheIdx";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "AuctionSettledWithBuyout";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "collection";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "tokenId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "newBidder";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "bid";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "loanAddress";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "loanId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "BidPlaced";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "liquidationDistributor";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }];
                          name: "LiquidationDistributorUpdated";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "loan";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }];
                          name: "LoanContractAdded";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "loan";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }];
                          name: "LoanContractRemoved";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "collection";
                              internalType: "address";
                              type: "address";
                              indexed: false;
                          }, {
                              name: "tokenId";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }, {
                              name: "auction";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                              indexed: false;
                          }];
                          name: "LoanLiquidationStarted";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "user";
                              internalType: "address";
                              type: "address";
                              indexed: true;
                          }, {
                              name: "newOwner";
                              internalType: "address";
                              type: "address";
                              indexed: true;
                          }];
                          name: "OwnershipTransferred";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "timeForMainLenderToBuy";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "TimeForMainLenderToBuyUpdated";
                      }, {
                          type: "event";
                          anonymous: false;
                          inputs: readonly [{
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                              indexed: false;
                          }];
                          name: "TriggerFeeUpdated";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "MAX_TRIGGER_FEE";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "MIN_INCREMENT_BPS";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_loanContract";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "addLoanContract";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_nftAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_tokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "getAuctionHash";
                          outputs: readonly [{
                              name: "";
                              internalType: "bytes32";
                              type: "bytes32";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getLiquidationDistributor";
                          outputs: readonly [{
                              name: "";
                              internalType: "address";
                              type: "address";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getLoanManagerRegistry";
                          outputs: readonly [{
                              name: "";
                              internalType: "contract ILoanManagerRegistry";
                              type: "address";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getMaxExtension";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint96";
                              type: "uint96";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getTimeForMainLenderToBuy";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getTriggerFee";
                          outputs: readonly [{
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "getValidLoanContracts";
                          outputs: readonly [{
                              name: "";
                              internalType: "address[]";
                              type: "address[]";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_loanId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_nftAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_tokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_asset";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_duration";
                              internalType: "uint96";
                              type: "uint96";
                          }, {
                              name: "_minBid";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_originator";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "liquidateLoan";
                          outputs: readonly [{
                              name: "";
                              internalType: "bytes";
                              type: "bytes";
                          }];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "";
                              internalType: "bytes";
                              type: "bytes";
                          }];
                          name: "onERC721Received";
                          outputs: readonly [{
                              name: "";
                              internalType: "bytes4";
                              type: "bytes4";
                          }];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [];
                          name: "owner";
                          outputs: readonly [{
                              name: "";
                              internalType: "address";
                              type: "address";
                          }];
                          stateMutability: "view";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_nftAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_tokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_auction";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                          }, {
                              name: "_bid";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "placeBid";
                          outputs: readonly [{
                              name: "";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                          }];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_loanContract";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "removeLoanContract";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "__timeForMainLenderToBuy";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "setTimeForMainLenderToBuy";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_auction";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                          }, {
                              name: "_loan";
                              internalType: "struct IMultiSourceLoan.Loan";
                              type: "tuple";
                              components: readonly [{
                                  name: "borrower";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "nftCollateralTokenId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "nftCollateralAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "duration";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "tranche";
                                  internalType: "struct IMultiSourceLoan.Tranche[]";
                                  type: "tuple[]";
                                  components: readonly [{
                                      name: "loanId";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "floor";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "principalAmount";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "lender";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "accruedInterest";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "startTime";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "aprBps";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                              }, {
                                  name: "protocolFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }];
                          name: "settleAuction";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "_nftAddress";
                              internalType: "address";
                              type: "address";
                          }, {
                              name: "_tokenId";
                              internalType: "uint256";
                              type: "uint256";
                          }, {
                              name: "_auction";
                              internalType: "struct IAuctionLoanLiquidator.Auction";
                              type: "tuple";
                              components: readonly [{
                                  name: "loanAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "loanId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "triggerFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "minBid";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "highestBidder";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "duration";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "asset";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "startTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }, {
                                  name: "originator";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "lastBidTime";
                                  internalType: "uint96";
                                  type: "uint96";
                              }];
                          }, {
                              name: "_loan";
                              internalType: "struct IMultiSourceLoan.Loan";
                              type: "tuple";
                              components: readonly [{
                                  name: "borrower";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "nftCollateralTokenId";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "nftCollateralAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAddress";
                                  internalType: "address";
                                  type: "address";
                              }, {
                                  name: "principalAmount";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "startTime";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "duration";
                                  internalType: "uint256";
                                  type: "uint256";
                              }, {
                                  name: "tranche";
                                  internalType: "struct IMultiSourceLoan.Tranche[]";
                                  type: "tuple[]";
                                  components: readonly [{
                                      name: "loanId";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "floor";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "principalAmount";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "lender";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "accruedInterest";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "startTime";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "aprBps";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                              }, {
                                  name: "protocolFee";
                                  internalType: "uint256";
                                  type: "uint256";
                              }];
                          }];
                          name: "settleWithBuyout";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "newOwner";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "transferOwnership";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "__liquidationDistributor";
                              internalType: "address";
                              type: "address";
                          }];
                          name: "updateLiquidationDistributor";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }, {
                          type: "function";
                          inputs: readonly [{
                              name: "triggerFee";
                              internalType: "uint256";
                              type: "uint256";
                          }];
                          name: "updateTriggerFee";
                          outputs: readonly [];
                          stateMutability: "nonpayable";
                      }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated" | "AuctionSettledWithBuyout" | "TimeForMainLenderToBuyUpdated")[]
                          ? TFunctionName[number]
                          : TFunctionName>

                  +
                  + +
                  +
                  \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.Api.html b/docs/0.17.2/classes/Internal.Api.html new file mode 100644 index 00000000..255bd80a --- /dev/null +++ b/docs/0.17.2/classes/Internal.Api.html @@ -0,0 +1,1177 @@ +Api | Gondi JS SDK - v0.17.2
                  +
                  + +
                  +
                  +
                  +
                  + +

                  Class Api

                  +
                  +

                  Hierarchy

                  +
                    +
                  • Api
                  +
                  +
                  +
                  + +
                  +
                  +

                  Constructors

                  +
                  + +
                  +
                  +

                  Methods

                  +
                  + +
                    + +
                  • +
                    +

                    Parameters

                    +
                    +

                    Returns Promise<{
                        aprBps: bigint;
                        borrowerAddress: `0x${string}`;
                        capacity: bigint;
                        contractAddress: `0x${string}`;
                        duration: bigint;
                        expirationTime: bigint;
                        fee: bigint;
                        lenderAddress: `0x${string}`;
                        maxSeniorRepayment?: InputMaybe<bigint>;
                        maxTrancheFloor?: InputMaybe<bigint>;
                        nftId: number;
                        offerHash: `0x${string}`;
                        offerId: bigint;
                        offerValidators: OfferValidatorInput[];
                        principalAddress: `0x${string}`;
                        principalAmount: bigint;
                        requiresLiquidation?: InputMaybe<boolean>;
                        signature: `0x${string}`;
                        signerAddress?: InputMaybe<`0x${string}`>;
                        id: string;
                        nftCollateralAddress: `0x${string}`;
                        nftCollateralTokenId: bigint;
                    }>

                  +
                  + +
                    + +
                  • +
                    +

                    Parameters

                    +
                    +

                    Returns Promise<{
                        __typename?: "SellAndRepayOrder";
                        id: string;
                        status: string;
                        signature: `0x${string}`;
                        repaymentCalldata: `0x${string}`;
                        cancelCalldata: `0x${string}`;
                        marketPlaceAddress: `0x${string}`;
                    } | {
                        __typename?: "SignatureRequest";
                        key: string;
                        typedData: {
                            __typename?: "TypedData";
                            types: object;
                            primaryType: string;
                            domain: object;
                            message: object;
                        };
                    }>

                  +
                  + +
                    + +
                  • +
                    +

                    Parameters

                    +
                    +

                    Returns Promise<{
                        aprBps: bigint;
                        borrowerAddress: `0x${string}`;
                        capacity: bigint;
                        collectionId: number;
                        contractAddress: `0x${string}`;
                        duration: bigint;
                        expirationTime: bigint;
                        fee: bigint;
                        lenderAddress: `0x${string}`;
                        maxSeniorRepayment?: InputMaybe<bigint>;
                        maxTrancheFloor?: InputMaybe<bigint>;
                        offerHash: `0x${string}`;
                        offerId: bigint;
                        offerValidators: OfferValidatorInput[];
                        principalAddress: `0x${string}`;
                        principalAmount: bigint;
                        requiresLiquidation?: InputMaybe<boolean>;
                        signature: `0x${string}`;
                        signerAddress?: InputMaybe<`0x${string}`>;
                        id: string;
                        nftCollateralAddress: `0x${string}`;
                        nftCollateralTokenId: bigint;
                    }>

                  +
                  + +
                    + +
                  • +
                    +

                    Parameters

                    +
                    +

                    Returns Promise<{
                        id: string;
                        loanId: string;
                        duration: bigint;
                        principalAmount: bigint;
                        renegotiationId: bigint;
                        requiresLiquidation?: InputMaybe<boolean>;
                        aprBps: bigint;
                        expirationTime: bigint;
                        targetPrincipal?: InputMaybe<bigint[]>;
                        strictImprovement?: InputMaybe<boolean>;
                        trancheIndex?: InputMaybe<bigint[]>;
                        lenderAddress: `0x${string}`;
                        signerAddress?: InputMaybe<`0x${string}`>;
                        offerHash: `0x${string}`;
                        feeAmount: bigint;
                        isAddNewTranche?: InputMaybe<boolean>;
                        signature: `0x${string}`;
                    }>

                  +
                  + +
                    + +
                  • +
                    +

                    Parameters

                    +
                    +

                    Returns Promise<{
                        offers: ({
                            type: undefined | "CollectionOffer" | "SingleNFTOffer";
                            lender: undefined | null | `0x${string}`;
                            borrower: undefined | null | `0x${string}`;
                            signer: undefined | null | `0x${string}`;
                            offerValidators: {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[] | {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[];
                            nftCollateralAddress: `0x${string}`;
                            nftCollateralTokenId: bigint;
                            id: string;
                            offerId: bigint;
                            lenderAddress?: null | `0x${string}`;
                            borrowerAddress?: null | `0x${string}`;
                            signerAddress?: null | `0x${string}`;
                            contractAddress: `0x${string}`;
                            requiresLiquidation?: null | boolean;
                            principalAddress: `0x${string}`;
                            principalAmount: bigint;
                            aprBps: bigint;
                            fee: bigint;
                            capacity: bigint;
                            expirationTime: bigint;
                            duration: bigint;
                            status: string;
                            offerHash?: null | `0x${string}`;
                            signature?: null | `0x${string}`;
                            createdDate?: null | Date;
                            repayment: bigint;
                            hidden?: null | boolean;
                            maxSeniorRepayment: bigint;
                            collection: {
                                __typename?: "Collection";
                                id: string;
                                slug: string;
                                contractData: {
                                    __typename?: "ContractData";
                                    contractAddress: `0x${string}`;
                                };
                            };
                            currency: {
                                __typename?: "Currency";
                                symbol: string;
                                decimals: number;
                                address: `0x${string}`;
                            };
                            validators: {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[];
                        } | {
                            type: undefined | "CollectionOffer" | "SingleNFTOffer";
                            lender: undefined | null | `0x${string}`;
                            borrower: undefined | null | `0x${string}`;
                            signer: undefined | null | `0x${string}`;
                            offerValidators: {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[] | {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[];
                            nftCollateralAddress: `0x${string}`;
                            nftCollateralTokenId: bigint;
                            id: string;
                            offerId: bigint;
                            lenderAddress?: null | `0x${string}`;
                            borrowerAddress?: null | `0x${string}`;
                            signerAddress?: null | `0x${string}`;
                            contractAddress: `0x${string}`;
                            requiresLiquidation?: null | boolean;
                            principalAddress: `0x${string}`;
                            principalAmount: bigint;
                            aprBps: bigint;
                            fee: bigint;
                            capacity: bigint;
                            expirationTime: bigint;
                            duration: bigint;
                            status: string;
                            offerHash?: null | `0x${string}`;
                            signature?: null | `0x${string}`;
                            createdDate?: null | Date;
                            repayment: bigint;
                            hidden?: null | boolean;
                            maxSeniorRepayment: bigint;
                            nft: {
                                __typename?: "NFT";
                                id: string;
                                tokenId: bigint;
                                collection?: null | {
                                    __typename?: "Collection";
                                    id: string;
                                    slug: string;
                                    contractData: {
                                        __typename?: "ContractData";
                                        contractAddress: `0x${string}`;
                                    };
                                };
                            };
                            currency: {
                                __typename?: "Currency";
                                symbol: string;
                                decimals: number;
                                address: `0x${string}`;
                            };
                            validators: {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[];
                        })[];
                        hasNextPage: true;
                        cursor: string;
                    } | {
                        offers: ({
                            type: undefined | "CollectionOffer" | "SingleNFTOffer";
                            lender: undefined | null | `0x${string}`;
                            borrower: undefined | null | `0x${string}`;
                            signer: undefined | null | `0x${string}`;
                            offerValidators: {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[] | {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[];
                            nftCollateralAddress: `0x${string}`;
                            nftCollateralTokenId: bigint;
                            id: string;
                            offerId: bigint;
                            lenderAddress?: null | `0x${string}`;
                            borrowerAddress?: null | `0x${string}`;
                            signerAddress?: null | `0x${string}`;
                            contractAddress: `0x${string}`;
                            requiresLiquidation?: null | boolean;
                            principalAddress: `0x${string}`;
                            principalAmount: bigint;
                            aprBps: bigint;
                            fee: bigint;
                            capacity: bigint;
                            expirationTime: bigint;
                            duration: bigint;
                            status: string;
                            offerHash?: null | `0x${string}`;
                            signature?: null | `0x${string}`;
                            createdDate?: null | Date;
                            repayment: bigint;
                            hidden?: null | boolean;
                            maxSeniorRepayment: bigint;
                            collection: {
                                __typename?: "Collection";
                                id: string;
                                slug: string;
                                contractData: {
                                    __typename?: "ContractData";
                                    contractAddress: `0x${string}`;
                                };
                            };
                            currency: {
                                __typename?: "Currency";
                                symbol: string;
                                decimals: number;
                                address: `0x${string}`;
                            };
                            validators: {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[];
                        } | {
                            type: undefined | "CollectionOffer" | "SingleNFTOffer";
                            lender: undefined | null | `0x${string}`;
                            borrower: undefined | null | `0x${string}`;
                            signer: undefined | null | `0x${string}`;
                            offerValidators: {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[] | {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[];
                            nftCollateralAddress: `0x${string}`;
                            nftCollateralTokenId: bigint;
                            id: string;
                            offerId: bigint;
                            lenderAddress?: null | `0x${string}`;
                            borrowerAddress?: null | `0x${string}`;
                            signerAddress?: null | `0x${string}`;
                            contractAddress: `0x${string}`;
                            requiresLiquidation?: null | boolean;
                            principalAddress: `0x${string}`;
                            principalAmount: bigint;
                            aprBps: bigint;
                            fee: bigint;
                            capacity: bigint;
                            expirationTime: bigint;
                            duration: bigint;
                            status: string;
                            offerHash?: null | `0x${string}`;
                            signature?: null | `0x${string}`;
                            createdDate?: null | Date;
                            repayment: bigint;
                            hidden?: null | boolean;
                            maxSeniorRepayment: bigint;
                            nft: {
                                __typename?: "NFT";
                                id: string;
                                tokenId: bigint;
                                collection?: null | {
                                    __typename?: "Collection";
                                    id: string;
                                    slug: string;
                                    contractData: {
                                        __typename?: "ContractData";
                                        contractAddress: `0x${string}`;
                                    };
                                };
                            };
                            currency: {
                                __typename?: "Currency";
                                symbol: string;
                                decimals: number;
                                address: `0x${string}`;
                            };
                            validators: {
                                __typename?: "OfferValidator";
                                arguments: `0x${string}`;
                                validator: `0x${string}`;
                            }[];
                        })[];
                        hasNextPage: false;
                        cursor: null;
                    }>

                  +
                  + +
                    + +
                  • +
                    +

                    Parameters

                    +
                    +

                    Returns Promise<{
                        loans: {
                            type: undefined | "MultiSourceLoan";
                            contractAddress: `0x${string}`;
                            nftCollateralTokenId: bigint;
                            nftCollateralAddress: undefined | `0x${string}`;
                            borrower: `0x${string}`;
                            startTime: bigint;
                            source: {
                                lender: `0x${string}`;
                                loanId: bigint;
                                startTime: bigint;
                                __typename?: "Source";
                                id: string;
                                originationFee: bigint;
                                principalAmount: bigint;
                                lenderAddress: string;
                                accruedInterest: bigint;
                                aprBps: bigint;
                            }[];
                            id: string;
                            address: `0x${string}`;
                            loanId: number;
                            timestamp: Date;
                            txHash: `0x${string}`;
                            indexInBlock: number;
                            borrowerAddress: `0x${string}`;
                            principalAddress: `0x${string}`;
                            duration: bigint;
                            status: string;
                            principalAmount: bigint;
                            blendedAprBps: number;
                            totalOriginationFee: bigint;
                            protocolFee: bigint;
                            offer: {
                                __typename?: "CollectionOffer";
                                offerId: bigint;
                                signerAddress?: null | `0x${string}`;
                            } | {
                                __typename?: "SingleNFTOffer";
                                offerId: bigint;
                                signerAddress?: null | `0x${string}`;
                            };
                            currency: {
                                __typename?: "Currency";
                                symbol: string;
                                decimals: number;
                                address: `0x${string}`;
                            };
                            repaidActivity?: null | {
                                __typename?: "LoanRepaid";
                                totalInterest: bigint;
                                timestamp: Date;
                            };
                            nft: {
                                __typename?: "NFT";
                                id: string;
                                name?: null | string;
                                tokenId: bigint;
                                nftId: string;
                                owner?: null | `0x${string}`;
                                image?: null | {
                                    __typename?: "Asset";
                                    data: string;
                                    cacheUrl?: null | string;
                                    contentTypeMime: string;
                                    accessTypeName: string;
                                };
                                collection?: null | {
                                    __typename?: "Collection";
                                    id: string;
                                    slug: string;
                                    name?: null | string;
                                    nftsCount?: null | number;
                                    contractData: {
                                        __typename?: "ContractData";
                                        contractAddress: `0x${string}`;
                                    };
                                };
                            };
                            sources: {
                                __typename?: "Source";
                                id: string;
                                loanId: string;
                                originationFee: bigint;
                                principalAmount: bigint;
                                lenderAddress: string;
                                accruedInterest: bigint;
                                aprBps: bigint;
                                startTime: Date;
                            }[];
                        }[];
                        hasNextPage: true;
                        cursor: string;
                    } | {
                        loans: {
                            type: undefined | "MultiSourceLoan";
                            contractAddress: `0x${string}`;
                            nftCollateralTokenId: bigint;
                            nftCollateralAddress: undefined | `0x${string}`;
                            borrower: `0x${string}`;
                            startTime: bigint;
                            source: {
                                lender: `0x${string}`;
                                loanId: bigint;
                                startTime: bigint;
                                __typename?: "Source";
                                id: string;
                                originationFee: bigint;
                                principalAmount: bigint;
                                lenderAddress: string;
                                accruedInterest: bigint;
                                aprBps: bigint;
                            }[];
                            id: string;
                            address: `0x${string}`;
                            loanId: number;
                            timestamp: Date;
                            txHash: `0x${string}`;
                            indexInBlock: number;
                            borrowerAddress: `0x${string}`;
                            principalAddress: `0x${string}`;
                            duration: bigint;
                            status: string;
                            principalAmount: bigint;
                            blendedAprBps: number;
                            totalOriginationFee: bigint;
                            protocolFee: bigint;
                            offer: {
                                __typename?: "CollectionOffer";
                                offerId: bigint;
                                signerAddress?: null | `0x${string}`;
                            } | {
                                __typename?: "SingleNFTOffer";
                                offerId: bigint;
                                signerAddress?: null | `0x${string}`;
                            };
                            currency: {
                                __typename?: "Currency";
                                symbol: string;
                                decimals: number;
                                address: `0x${string}`;
                            };
                            repaidActivity?: null | {
                                __typename?: "LoanRepaid";
                                totalInterest: bigint;
                                timestamp: Date;
                            };
                            nft: {
                                __typename?: "NFT";
                                id: string;
                                name?: null | string;
                                tokenId: bigint;
                                nftId: string;
                                owner?: null | `0x${string}`;
                                image?: null | {
                                    __typename?: "Asset";
                                    data: string;
                                    cacheUrl?: null | string;
                                    contentTypeMime: string;
                                    accessTypeName: string;
                                };
                                collection?: null | {
                                    __typename?: "Collection";
                                    id: string;
                                    slug: string;
                                    name?: null | string;
                                    nftsCount?: null | number;
                                    contractData: {
                                        __typename?: "ContractData";
                                        contractAddress: `0x${string}`;
                                    };
                                };
                            };
                            sources: {
                                __typename?: "Source";
                                id: string;
                                loanId: string;
                                originationFee: bigint;
                                principalAmount: bigint;
                                lenderAddress: string;
                                accruedInterest: bigint;
                                aprBps: bigint;
                                startTime: Date;
                            }[];
                        }[];
                        hasNextPage: false;
                        cursor: null;
                    }>

                  +
                  + +
                    + +
                  • +
                    +

                    Parameters

                    +
                    +

                    Returns Promise<{
                        listings: {
                            __typename?: "Listing";
                            id: string;
                            marketplaceName: MarketplaceEnum;
                            createdDate: Date;
                            desiredDuration?: null | number;
                            desiredPrincipalAddress?: null | `0x${string}`;
                            user: {
                                __typename?: "User";
                                walletAddress: `0x${string}`;
                            };
                            nft: {
                                __typename?: "NFT";
                                id: string;
                                tokenId: bigint;
                                collection?: null | {
                                    __typename?: "Collection";
                                    id: string;
                                    slug: string;
                                    contractData: {
                                        __typename?: "ContractData";
                                        contractAddress: `0x${string}`;
                                    };
                                };
                            };
                        }[];
                        hasNextPage: true;
                        cursor: string;
                    } | {
                        listings: {
                            __typename?: "Listing";
                            id: string;
                            marketplaceName: MarketplaceEnum;
                            createdDate: Date;
                            desiredDuration?: null | number;
                            desiredPrincipalAddress?: null | `0x${string}`;
                            user: {
                                __typename?: "User";
                                walletAddress: `0x${string}`;
                            };
                            nft: {
                                __typename?: "NFT";
                                id: string;
                                tokenId: bigint;
                                collection?: null | {
                                    __typename?: "Collection";
                                    id: string;
                                    slug: string;
                                    contractData: {
                                        __typename?: "ContractData";
                                        contractAddress: `0x${string}`;
                                    };
                                };
                            };
                        }[];
                        hasNextPage: false;
                        cursor: null;
                    }>

                  +
                  + +
                    + +
                  • +
                    +

                    Parameters

                    +
                      +
                    • +
                      collection: {
                          contractData: {
                              contractAddress: `0x${string}`;
                          };
                          wrapperCollections?: {
                              contractData: {
                                  contractAddress: `0x${string}`;
                              };
                          }[];
                      }
                      +
                        +
                      • +
                        contractData: {
                            contractAddress: `0x${string}`;
                        }
                        +
                          +
                        • +
                          contractAddress: `0x${string}`
                      • +
                      • +
                        Optional wrapperCollections?: {
                            contractData: {
                                contractAddress: `0x${string}`;
                            };
                        }[]
                    +

                    Returns Promise<`0x${string}`>

                  +
                  +

                  Properties

                  +
                  + +
                  api: {
                      listNft(variables, options?) => Promise<ListNftMutation>;
                      unlistNft(variables, options?) => Promise<UnlistNftMutation>;
                      generateCollectionOfferHash(variables, options?) => Promise<GenerateCollectionOfferHashMutation>;
                      saveCollectionOffer(variables, options?) => Promise<SaveCollectionOfferMutation>;
                      hideOffer(variables, options?) => Promise<HideOfferMutation>;
                      generateSingleNftOfferHash(variables, options?) => Promise<GenerateSingleNftOfferHashMutation>;
                      saveSingleNftOffer(variables, options?) => Promise<SaveSingleNftOfferMutation>;
                      unhideOffer(variables, options?) => Promise<UnhideOfferMutation>;
                      hideOrder(variables, options?) => Promise<HideOrderMutation>;
                      publishSellAndRepayOrder(variables, options?) => Promise<PublishSellAndRepayOrderMutation>;
                      showOrder(variables, options?) => Promise<ShowOrderMutation>;
                      generateRenegotiationOfferHash(variables, options?) => Promise<GenerateRenegotiationOfferHashMutation>;
                      hideRenegotiationOffer(variables, options?) => Promise<HideRenegotiationOfferMutation>;
                      saveRenegotiationOffer(variables, options?) => Promise<SaveRenegotiationOfferMutation>;
                      unhideRenegotiationOffer(variables, options?) => Promise<UnhideRenegotiationOfferMutation>;
                      collections(variables, options?) => Promise<CollectionsQuery>;
                      collectionByContractAddress(variables, options?) => Promise<CollectionByContractAddressQuery>;
                      collectionsIdByContractAddress(variables, options?) => Promise<CollectionsIdByContractAddressQuery>;
                      collectionIdBySlug(variables, options?) => Promise<CollectionIdBySlugQuery>;
                      listListings(variables?, options?) => Promise<ListListingsQuery>;
                      listLoans(variables?, options?) => Promise<ListLoansQuery>;
                      nftIdByContractAddressAndTokenId(variables, options?) => Promise<NftIdByContractAddressAndTokenIdQuery>;
                      nftIdBySlugTokenId(variables, options?) => Promise<NftIdBySlugTokenIdQuery>;
                      ownedNfts(variables?, options?) => Promise<OwnedNftsQuery>;
                      listOffers(variables, options?) => Promise<ListOffersQuery>;
                  }
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  generateSingleNftOfferHash: ((variables, options?) => Promise<GenerateSingleNftOfferHashMutation>)
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  generateCollectionOfferHash: ((variables, options?) => Promise<GenerateCollectionOfferHashMutation>)
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  generateRenegotiationOfferHash: ((variables, options?) => Promise<GenerateRenegotiationOfferHashMutation>)
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  nftIdBySlugTokenId: ((variables, options?) => Promise<NftIdBySlugTokenIdQuery>)
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  nftIdByContractAddressAndTokenId: ((variables, options?) => Promise<NftIdByContractAddressAndTokenIdQuery>)
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  collections: ((variables, options?) => Promise<CollectionsQuery>)
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  collectionIdBySlug: ((variables, options?) => Promise<CollectionIdBySlugQuery>)
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  collectionsIdByContractAddress: ((variables, options?) => Promise<CollectionsIdByContractAddressQuery>)
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  collectionByContractAddress: ((variables, options?) => Promise<CollectionByContractAddressQuery>)
                  +
                  +

                  Type declaration

                  +
                  +
                  + +
                  listNft: ((variables, options?) => Promise<ListNftMutation>)
                  +
                  +

                  Type declaration

                  +
                    +
                  • +
                      +
                    • (variables, options?): Promise<ListNftMutation>
                    • +
                    • +
                      +

                      Parameters

                      +
                        +
                      • +
                        variables: Exact<{
                            nftId: number;
                        }>
                      • +
                      • +
                        Optional options: {}
                        +
                        +

                        Returns Promise<ListNftMutation>

                    +
                    + +
                    unlistNft: ((variables, options?) => Promise<UnlistNftMutation>)
                    +
                    +

                    Type declaration

                    +
                    +
                    + +
                    ownedNfts: ((variables?, options?) => Promise<OwnedNftsQuery>)
                    +
                    +

                    Type declaration

                    +
                    +
                    + +
                    hideOffer: ((variables, options?) => Promise<HideOfferMutation>)
                    +
                    +

                    Type declaration

                    +
                      +
                    • +
                        +
                      • (variables, options?): Promise<HideOfferMutation>
                      • +
                      • +
                        +

                        Parameters

                        +
                          +
                        • +
                          variables: Exact<{
                              contract: `0x${string}`;
                              id: string;
                          }>
                        • +
                        • +
                          Optional options: {}
                          +
                          +

                          Returns Promise<HideOfferMutation>

                      +
                      + +
                      hideRenegotiationOffer: ((variables, options?) => Promise<HideRenegotiationOfferMutation>)
                      +
                      +

                      Type declaration

                      +
                      +
                      + +
                      unhideOffer: ((variables, options?) => Promise<UnhideOfferMutation>)
                      +
                      +

                      Type declaration

                      +
                        +
                      • +
                      +
                      + +
                      unhideRenegotiationOffer: ((variables, options?) => Promise<UnhideRenegotiationOfferMutation>)
                      +
                      +

                      Type declaration

                      +
                      +
                      + +
                      hideOrder: ((variables, options?) => Promise<HideOrderMutation>)
                      +
                      +

                      Type declaration

                      +
                      +
                      + +
                      showOrder: ((variables, options?) => Promise<ShowOrderMutation>)
                      +
                      +

                      Type declaration

                      +
                      +
                      + +
                      +
                      \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.BaseContract.html b/docs/0.17.2/classes/Internal.BaseContract.html new file mode 100644 index 00000000..64790184 --- /dev/null +++ b/docs/0.17.2/classes/Internal.BaseContract.html @@ -0,0 +1,342 @@ +BaseContract | Gondi JS SDK - v0.17.2
                      +
                      + +
                      +
                      +
                      +
                      + +

                      Class BaseContract<TAbi>

                      +
                      +

                      Type Parameters

                      +
                        +
                      • +

                        TAbi extends Abi

                      +
                      +

                      Hierarchy

                      +
                      +
                      +
                      +
                      + +
                      +
                      +

                      Constructors

                      +
                      +
                      +

                      Methods

                      +
                      +
                      +

                      Properties

                      +
                      +
                      +

                      Constructors

                      +
                      + +
                        + +
                      • +
                        +

                        Type Parameters

                        +
                          +
                        • +

                          TAbi extends Abi

                        +
                        +

                        Parameters

                        +
                          +
                        • +
                          __namedParameters: {
                              walletClient: {};
                              address: `0x${string}`;
                              abi: TAbi;
                          }
                          +
                            +
                          • +
                            walletClient: {}
                            +
                            • +
                            • +
                              address: `0x${string}`
                            • +
                            • +
                              abi: TAbi
                          +

                          Returns BaseContract<TAbi>

                        +
                        +

                        Methods

                        +
                        + +
                          + +
                        • +
                          +

                          Parameters

                          +
                            +
                          • +
                            data: `0x${string}`
                          +

                          Returns Promise<{
                              txHash: `0x${string}`;
                              waitTxInBlock: (() => Promise<TransactionReceipt>);
                          }>

                        +
                        +

                        Properties

                        +
                        + +
                        abi: TAbi
                        +
                        + +
                        address: `0x${string}`
                        +
                        + +
                        bcClient: {}
                        +
                        +

                        Type declaration

                        +
                          +
                          + +
                          wallet: {}
                          +
                          +

                          Type declaration

                          +
                            +
                            + +
                            contract: GetContractReturnType<TAbi, {} | {}>
                            +
                            + +
                            safeContractWrite: {
                                [TFunctionName in string]: ((args, options?) => Promise<`0x${string}`>)
                            }
                            +
                            + +
                            parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<TAbi, TFunctionName, true, TFunctionName extends ContractEventName<TAbi>[]
                                ? TFunctionName[number]
                                : TFunctionName>)
                            +
                            +

                            Type declaration

                            +
                              +
                            • +
                                +
                              • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<TAbi, TFunctionName, true, TFunctionName extends ContractEventName<TAbi>[]
                                    ? TFunctionName[number]
                                    : TFunctionName>
                              • +
                              • +
                                +

                                Type Parameters

                                +
                                  +
                                • +

                                  TFunctionName extends string

                                +
                                +

                                Parameters

                                +
                                  +
                                • +
                                  eventName: TFunctionName
                                • +
                                • +
                                  logs: Log<bigint, number, false>[]
                                +

                                Returns ParseEventLogsReturnType<TAbi, TFunctionName, true, TFunctionName extends ContractEventName<TAbi>[]
                                    ? TFunctionName[number]
                                    : TFunctionName>

                            +
                            + +
                            +
                            \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.Contracts.html b/docs/0.17.2/classes/Internal.Contracts.html new file mode 100644 index 00000000..3e1ef26d --- /dev/null +++ b/docs/0.17.2/classes/Internal.Contracts.html @@ -0,0 +1,494 @@ +Contracts | Gondi JS SDK - v0.17.2
                            +
                            + +
                            +
                            +
                            +
                            + +

                            Class Contracts

                            +
                            +

                            Hierarchy

                            +
                              +
                            • Contracts
                            +
                            +
                            +
                            + +
                            +
                            +

                            Constructors

                            +
                            + +
                            +
                            +

                            Methods

                            +
                            + +
                            +
                            + +
                            +
                            + +
                            +
                            + +
                            +
                            + +
                            +
                            + +
                            +
                            + +
                              + +
                            • +
                              +

                              Parameters

                              +
                                +
                              • +
                                address: `0x${string}`
                              +

                              Returns BaseContract<readonly [{
                                  type: "event";
                                  anonymous: false;
                                  inputs: readonly [{
                                      name: "owner";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "spender";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                      indexed: true;
                                  }];
                                  name: "Approval";
                              }, {
                                  type: "event";
                                  anonymous: false;
                                  inputs: readonly [{
                                      name: "owner";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "operator";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "approved";
                                      internalType: "bool";
                                      type: "bool";
                                      indexed: false;
                                  }];
                                  name: "ApprovalForAll";
                              }, {
                                  type: "event";
                                  anonymous: false;
                                  inputs: readonly [{
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                      indexed: true;
                                  }];
                                  name: "Transfer";
                              }, {
                                  stateMutability: "nonpayable";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "spender";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "approve";
                                  outputs: readonly [];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "owner";
                                      internalType: "address";
                                      type: "address";
                                  }];
                                  name: "balanceOf";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "getApproved";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }];
                                  name: "isApprovedForAll";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "bool";
                                      type: "bool";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [];
                                  name: "name";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "string";
                                      type: "string";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "ownerOf";
                                  outputs: readonly [{
                                      name: "owner";
                                      internalType: "address";
                                      type: "address";
                                  }];
                              }, {
                                  stateMutability: "nonpayable";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "safeTransferFrom";
                                  outputs: readonly [];
                              }, {
                                  stateMutability: "nonpayable";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "data";
                                      internalType: "bytes";
                                      type: "bytes";
                                  }];
                                  name: "safeTransferFrom";
                                  outputs: readonly [];
                              }, {
                                  stateMutability: "nonpayable";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "operator";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "approved";
                                      internalType: "bool";
                                      type: "bool";
                                  }];
                                  name: "setApprovalForAll";
                                  outputs: readonly [];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "interfaceId";
                                      internalType: "bytes4";
                                      type: "bytes4";
                                  }];
                                  name: "supportsInterface";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "bool";
                                      type: "bool";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [];
                                  name: "symbol";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "string";
                                      type: "string";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "tokenURI";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "string";
                                      type: "string";
                                  }];
                              }, {
                                  stateMutability: "nonpayable";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "transferFrom";
                                  outputs: readonly [];
                              }]>

                            +
                            + +
                              + +
                            • +
                              +

                              Parameters

                              +
                                +
                              • +
                                address: `0x${string}`
                              +

                              Returns BaseContract<readonly [{
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_uri";
                                      type: "string";
                                  }, {
                                      name: "_editions";
                                      type: "uint256";
                                  }, {
                                      name: "_salePrice";
                                      type: "uint256";
                                  }];
                                  name: "addNewTokenWithEditions";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }, {
                                      name: "_salePrice";
                                      type: "uint256";
                                  }];
                                  name: "setSalePrice";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [];
                                  name: "name";
                                  outputs: readonly [{
                                      name: "_name";
                                      type: "string";
                                  }];
                                  payable: false;
                                  stateMutability: "pure";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_to";
                                      type: "address";
                                  }, {
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "approve";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [];
                                  name: "totalSupply";
                                  outputs: readonly [{
                                      name: "";
                                      type: "uint256";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "currentBidDetailsOfToken";
                                  outputs: readonly [{
                                      name: "";
                                      type: "uint256";
                                  }, {
                                      name: "";
                                      type: "address";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "approvedFor";
                                  outputs: readonly [{
                                      name: "";
                                      type: "address";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "acceptBid";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_creator";
                                      type: "address";
                                  }];
                                  name: "isWhitelisted";
                                  outputs: readonly [{
                                      name: "";
                                      type: "bool";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "bid";
                                  outputs: readonly [];
                                  payable: true;
                                  stateMutability: "payable";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_owner";
                                      type: "address";
                                  }];
                                  name: "tokensOf";
                                  outputs: readonly [{
                                      name: "";
                                      type: "uint256[]";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_percentage";
                                      type: "uint256";
                                  }];
                                  name: "setMaintainerPercentage";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_creator";
                                      type: "address";
                                  }];
                                  name: "whitelistCreator";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "ownerOf";
                                  outputs: readonly [{
                                      name: "";
                                      type: "address";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_uri";
                                      type: "string";
                                  }];
                                  name: "originalTokenOfUri";
                                  outputs: readonly [{
                                      name: "";
                                      type: "uint256";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_owner";
                                      type: "address";
                                  }];
                                  name: "balanceOf";
                                  outputs: readonly [{
                                      name: "";
                                      type: "uint256";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [];
                                  name: "owner";
                                  outputs: readonly [{
                                      name: "";
                                      type: "address";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [];
                                  name: "symbol";
                                  outputs: readonly [{
                                      name: "_symbol";
                                      type: "string";
                                  }];
                                  payable: false;
                                  stateMutability: "pure";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "cancelBid";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "salePriceOfToken";
                                  outputs: readonly [{
                                      name: "";
                                      type: "uint256";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_to";
                                      type: "address";
                                  }, {
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "transfer";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "takeOwnership";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_percentage";
                                      type: "uint256";
                                  }];
                                  name: "setCreatorPercentage";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "tokenURI";
                                  outputs: readonly [{
                                      name: "";
                                      type: "string";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "creatorOfToken";
                                  outputs: readonly [{
                                      name: "";
                                      type: "address";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "buy";
                                  outputs: readonly [];
                                  payable: true;
                                  stateMutability: "payable";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "_uri";
                                      type: "string";
                                  }];
                                  name: "addNewToken";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [];
                                  name: "creatorPercentage";
                                  outputs: readonly [{
                                      name: "";
                                      type: "uint256";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: true;
                                  inputs: readonly [];
                                  name: "maintainerPercentage";
                                  outputs: readonly [{
                                      name: "";
                                      type: "uint256";
                                  }];
                                  payable: false;
                                  stateMutability: "view";
                                  type: "function";
                              }, {
                                  constant: false;
                                  inputs: readonly [{
                                      name: "newOwner";
                                      type: "address";
                                  }];
                                  name: "transferOwnership";
                                  outputs: readonly [];
                                  payable: false;
                                  stateMutability: "nonpayable";
                                  type: "function";
                              }, {
                                  anonymous: false;
                                  inputs: readonly [{
                                      indexed: true;
                                      name: "_creator";
                                      type: "address";
                                  }];
                                  name: "WhitelistCreator";
                                  type: "event";
                              }, {
                                  anonymous: false;
                                  inputs: readonly [{
                                      indexed: true;
                                      name: "_bidder";
                                      type: "address";
                                  }, {
                                      indexed: true;
                                      name: "_amount";
                                      type: "uint256";
                                  }, {
                                      indexed: true;
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "Bid";
                                  type: "event";
                              }, {
                                  anonymous: false;
                                  inputs: readonly [{
                                      indexed: true;
                                      name: "_bidder";
                                      type: "address";
                                  }, {
                                      indexed: true;
                                      name: "_seller";
                                      type: "address";
                                  }, {
                                      indexed: false;
                                      name: "_amount";
                                      type: "uint256";
                                  }, {
                                      indexed: true;
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "AcceptBid";
                                  type: "event";
                              }, {
                                  anonymous: false;
                                  inputs: readonly [{
                                      indexed: true;
                                      name: "_bidder";
                                      type: "address";
                                  }, {
                                      indexed: true;
                                      name: "_amount";
                                      type: "uint256";
                                  }, {
                                      indexed: true;
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "CancelBid";
                                  type: "event";
                              }, {
                                  anonymous: false;
                                  inputs: readonly [{
                                      indexed: true;
                                      name: "_buyer";
                                      type: "address";
                                  }, {
                                      indexed: true;
                                      name: "_seller";
                                      type: "address";
                                  }, {
                                      indexed: false;
                                      name: "_amount";
                                      type: "uint256";
                                  }, {
                                      indexed: true;
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "Sold";
                                  type: "event";
                              }, {
                                  anonymous: false;
                                  inputs: readonly [{
                                      indexed: true;
                                      name: "_tokenId";
                                      type: "uint256";
                                  }, {
                                      indexed: true;
                                      name: "_price";
                                      type: "uint256";
                                  }];
                                  name: "SalePriceSet";
                                  type: "event";
                              }, {
                                  anonymous: false;
                                  inputs: readonly [{
                                      indexed: true;
                                      name: "previousOwner";
                                      type: "address";
                                  }, {
                                      indexed: true;
                                      name: "newOwner";
                                      type: "address";
                                  }];
                                  name: "OwnershipTransferred";
                                  type: "event";
                              }, {
                                  anonymous: false;
                                  inputs: readonly [{
                                      indexed: true;
                                      name: "_from";
                                      type: "address";
                                  }, {
                                      indexed: true;
                                      name: "_to";
                                      type: "address";
                                  }, {
                                      indexed: false;
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "Transfer";
                                  type: "event";
                              }, {
                                  anonymous: false;
                                  inputs: readonly [{
                                      indexed: true;
                                      name: "_owner";
                                      type: "address";
                                  }, {
                                      indexed: true;
                                      name: "_approved";
                                      type: "address";
                                  }, {
                                      indexed: false;
                                      name: "_tokenId";
                                      type: "uint256";
                                  }];
                                  name: "Approval";
                                  type: "event";
                              }]>

                            +
                            + +
                              + +
                            • +
                              +

                              Parameters

                              +
                                +
                              • +
                                address: `0x${string}`
                              +

                              Returns BaseContract<readonly [{
                                  type: "function";
                                  inputs: readonly [{
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "balanceOf";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  stateMutability: "view";
                              }, {
                                  type: "function";
                                  inputs: readonly [{
                                      name: "owners";
                                      internalType: "address[]";
                                      type: "address[]";
                                  }, {
                                      name: "ids";
                                      internalType: "uint256[]";
                                      type: "uint256[]";
                                  }];
                                  name: "balanceOfBatch";
                                  outputs: readonly [{
                                      name: "balances";
                                      internalType: "uint256[]";
                                      type: "uint256[]";
                                  }];
                                  stateMutability: "view";
                              }, {
                                  type: "function";
                                  inputs: readonly [{
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }];
                                  name: "isApprovedForAll";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "bool";
                                      type: "bool";
                                  }];
                                  stateMutability: "view";
                              }, {
                                  type: "function";
                                  inputs: readonly [{
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "ids";
                                      internalType: "uint256[]";
                                      type: "uint256[]";
                                  }, {
                                      name: "amounts";
                                      internalType: "uint256[]";
                                      type: "uint256[]";
                                  }, {
                                      name: "data";
                                      internalType: "bytes";
                                      type: "bytes";
                                  }];
                                  name: "safeBatchTransferFrom";
                                  outputs: readonly [];
                                  stateMutability: "nonpayable";
                              }, {
                                  type: "function";
                                  inputs: readonly [{
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "amount";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "data";
                                      internalType: "bytes";
                                      type: "bytes";
                                  }];
                                  name: "safeTransferFrom";
                                  outputs: readonly [];
                                  stateMutability: "nonpayable";
                              }, {
                                  type: "function";
                                  inputs: readonly [{
                                      name: "operator";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "approved";
                                      internalType: "bool";
                                      type: "bool";
                                  }];
                                  name: "setApprovalForAll";
                                  outputs: readonly [];
                                  stateMutability: "nonpayable";
                              }, {
                                  type: "function";
                                  inputs: readonly [{
                                      name: "interfaceId";
                                      internalType: "bytes4";
                                      type: "bytes4";
                                  }];
                                  name: "supportsInterface";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "bool";
                                      type: "bool";
                                  }];
                                  stateMutability: "view";
                              }, {
                                  type: "function";
                                  inputs: readonly [{
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "uri";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "string";
                                      type: "string";
                                  }];
                                  stateMutability: "view";
                              }, {
                                  type: "event";
                                  anonymous: false;
                                  inputs: readonly [{
                                      name: "owner";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "operator";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "approved";
                                      internalType: "bool";
                                      type: "bool";
                                      indexed: false;
                                  }];
                                  name: "ApprovalForAll";
                              }, {
                                  type: "event";
                                  anonymous: false;
                                  inputs: readonly [{
                                      name: "operator";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "ids";
                                      internalType: "uint256[]";
                                      type: "uint256[]";
                                      indexed: false;
                                  }, {
                                      name: "amounts";
                                      internalType: "uint256[]";
                                      type: "uint256[]";
                                      indexed: false;
                                  }];
                                  name: "TransferBatch";
                              }, {
                                  type: "event";
                                  anonymous: false;
                                  inputs: readonly [{
                                      name: "operator";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                      indexed: false;
                                  }, {
                                      name: "amount";
                                      internalType: "uint256";
                                      type: "uint256";
                                      indexed: false;
                                  }];
                                  name: "TransferSingle";
                              }, {
                                  type: "event";
                                  anonymous: false;
                                  inputs: readonly [{
                                      name: "value";
                                      internalType: "string";
                                      type: "string";
                                      indexed: false;
                                  }, {
                                      name: "id";
                                      internalType: "uint256";
                                      type: "uint256";
                                      indexed: true;
                                  }];
                                  name: "URI";
                              }]>

                            +
                            + +
                            +
                            + +
                              + +
                            • +
                              +

                              Parameters

                              +
                                +
                              • +
                                address: `0x${string}`
                              +

                              Returns BaseContract<readonly [{
                                  type: "event";
                                  anonymous: false;
                                  inputs: readonly [{
                                      name: "owner";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "spender";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "amount";
                                      internalType: "uint256";
                                      type: "uint256";
                                      indexed: false;
                                  }];
                                  name: "Approval";
                              }, {
                                  type: "event";
                                  anonymous: false;
                                  inputs: readonly [{
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                      indexed: true;
                                  }, {
                                      name: "amount";
                                      internalType: "uint256";
                                      type: "uint256";
                                      indexed: false;
                                  }];
                                  name: "Transfer";
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [];
                                  name: "DOMAIN_SEPARATOR";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "bytes32";
                                      type: "bytes32";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }];
                                  name: "allowance";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                              }, {
                                  stateMutability: "nonpayable";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "spender";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "amount";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "approve";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "bool";
                                      type: "bool";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }];
                                  name: "balanceOf";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [];
                                  name: "decimals";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "uint8";
                                      type: "uint8";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [];
                                  name: "name";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "string";
                                      type: "string";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "";
                                      internalType: "address";
                                      type: "address";
                                  }];
                                  name: "nonces";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                              }, {
                                  stateMutability: "nonpayable";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "owner";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "spender";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "value";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "deadline";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }, {
                                      name: "v";
                                      internalType: "uint8";
                                      type: "uint8";
                                  }, {
                                      name: "r";
                                      internalType: "bytes32";
                                      type: "bytes32";
                                  }, {
                                      name: "s";
                                      internalType: "bytes32";
                                      type: "bytes32";
                                  }];
                                  name: "permit";
                                  outputs: readonly [];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [];
                                  name: "symbol";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "string";
                                      type: "string";
                                  }];
                              }, {
                                  stateMutability: "view";
                                  type: "function";
                                  inputs: readonly [];
                                  name: "totalSupply";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                              }, {
                                  stateMutability: "nonpayable";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "amount";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "transfer";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "bool";
                                      type: "bool";
                                  }];
                              }, {
                                  stateMutability: "nonpayable";
                                  type: "function";
                                  inputs: readonly [{
                                      name: "from";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "to";
                                      internalType: "address";
                                      type: "address";
                                  }, {
                                      name: "amount";
                                      internalType: "uint256";
                                      type: "uint256";
                                  }];
                                  name: "transferFrom";
                                  outputs: readonly [{
                                      name: "";
                                      internalType: "bool";
                                      type: "bool";
                                  }];
                              }]>

                            +
                            +

                            Properties

                            +
                            + +
                            publicClient: {}
                            +
                            +

                            Type declaration

                            +
                              +
                              + +
                              walletClient: {}
                              +
                              +

                              Type declaration

                              +
                                +
                                + +
                                MultiSourceLoanV4: MslV4
                                +
                                + +
                                MultiSourceLoanV5: MslV5
                                +
                                + +
                                MultiSourceLoanV6: MslV6
                                +
                                + +
                                AuctionLoanLiquidatorV4: AllV4
                                +
                                + +
                                AuctionLoanLiquidatorV5: AllV5
                                +
                                + +
                                AuctionLoanLiquidatorV6: AllV6
                                +
                                + +
                                UserVaultV5: UserVaultV5
                                +
                                + +
                                UserVaultV6: UserVaultV6
                                +
                                + +
                                PurchaseBundlerV5: PurchaseBundler
                                +
                                + +
                                PurchaseBundlerV6: PurchaseBundler
                                +
                                + +
                                +
                                \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.MslV4.html b/docs/0.17.2/classes/Internal.MslV4.html new file mode 100644 index 00000000..6a2ed711 --- /dev/null +++ b/docs/0.17.2/classes/Internal.MslV4.html @@ -0,0 +1,1185 @@ +MslV4 | Gondi JS SDK - v0.17.2
                                +
                                + +
                                +
                                +
                                +
                                + +

                                Class MslV4

                                +
                                +

                                Hierarchy

                                +
                                +
                                +
                                +
                                + +
                                +
                                +

                                Constructors

                                +
                                + +
                                +
                                +

                                Methods

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        structToSign: {
                                            offerId: bigint;
                                            lender: `0x${string}`;
                                            fee: bigint;
                                            borrower: `0x${string}`;
                                            capacity: bigint;
                                            signer: `0x${string}`;
                                            requiresLiquidation: boolean;
                                            nftCollateralAddress: `0x${string}`;
                                            nftCollateralTokenId: bigint;
                                            principalAddress: `0x${string}`;
                                            principalAmount: bigint;
                                            aprBps: bigint;
                                            expirationTime: bigint;
                                            duration: bigint;
                                            validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[];
                                        };
                                    }
                                    +
                                      +
                                    • +
                                      structToSign: {
                                          offerId: bigint;
                                          lender: `0x${string}`;
                                          fee: bigint;
                                          borrower: `0x${string}`;
                                          capacity: bigint;
                                          signer: `0x${string}`;
                                          requiresLiquidation: boolean;
                                          nftCollateralAddress: `0x${string}`;
                                          nftCollateralTokenId: bigint;
                                          principalAddress: `0x${string}`;
                                          principalAmount: bigint;
                                          aprBps: bigint;
                                          expirationTime: bigint;
                                          duration: bigint;
                                          validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[];
                                      }
                                      +
                                        +
                                      • +
                                        offerId: bigint
                                      • +
                                      • +
                                        lender: `0x${string}`
                                      • +
                                      • +
                                        fee: bigint
                                      • +
                                      • +
                                        borrower: `0x${string}`
                                      • +
                                      • +
                                        capacity: bigint
                                      • +
                                      • +
                                        signer: `0x${string}`
                                      • +
                                      • +
                                        requiresLiquidation: boolean
                                      • +
                                      • +
                                        nftCollateralAddress: `0x${string}`
                                      • +
                                      • +
                                        nftCollateralTokenId: bigint
                                      • +
                                      • +
                                        principalAddress: `0x${string}`
                                      • +
                                      • +
                                        principalAmount: bigint
                                      • +
                                      • +
                                        aprBps: bigint
                                      • +
                                      • +
                                        expirationTime: bigint
                                      • +
                                      • +
                                        duration: bigint
                                      • +
                                      • +
                                        validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[]
                                  +

                                  Returns Promise<`0x${string}`>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        structToSign: {
                                            renegotiationId: bigint;
                                            loanId: bigint;
                                            lender: `0x${string}`;
                                            fee: bigint;
                                            signer: `0x${string}`;
                                            targetPrincipal: readonly bigint[];
                                            principalAmount: bigint;
                                            aprBps: bigint;
                                            expirationTime: bigint;
                                            duration: bigint;
                                            strictImprovement: boolean;
                                        };
                                    }
                                    +
                                      +
                                    • +
                                      structToSign: {
                                          renegotiationId: bigint;
                                          loanId: bigint;
                                          lender: `0x${string}`;
                                          fee: bigint;
                                          signer: `0x${string}`;
                                          targetPrincipal: readonly bigint[];
                                          principalAmount: bigint;
                                          aprBps: bigint;
                                          expirationTime: bigint;
                                          duration: bigint;
                                          strictImprovement: boolean;
                                      }
                                      +
                                        +
                                      • +
                                        renegotiationId: bigint
                                      • +
                                      • +
                                        loanId: bigint
                                      • +
                                      • +
                                        lender: `0x${string}`
                                      • +
                                      • +
                                        fee: bigint
                                      • +
                                      • +
                                        signer: `0x${string}`
                                      • +
                                      • +
                                        targetPrincipal: readonly bigint[]
                                      • +
                                      • +
                                        principalAmount: bigint
                                      • +
                                      • +
                                        aprBps: bigint
                                      • +
                                      • +
                                        expirationTime: bigint
                                      • +
                                      • +
                                        duration: bigint
                                      • +
                                      • +
                                        strictImprovement: boolean
                                  +

                                  Returns Promise<`0x${string}`>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        id: bigint;
                                    }
                                    +
                                      +
                                    • +
                                      id: bigint
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          lender: `0x${string}`;
                                          offerId: bigint;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        minId: bigint;
                                    }
                                    +
                                      +
                                    • +
                                      minId: bigint
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          lender: `0x${string}`;
                                          minOfferId: bigint;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        id: bigint;
                                    }
                                    +
                                      +
                                    • +
                                      id: bigint
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          lender: `0x${string}`;
                                          renegotiationId: bigint;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        minId: bigint;
                                    }
                                    +
                                      +
                                    • +
                                      minId: bigint
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          lender: `0x${string}`;
                                          minRenegotiationId: bigint;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          loan: {
                                              contractAddress: `0x${string}`;
                                              borrower: `0x${string}`;
                                              nftCollateralTokenId: bigint;
                                              nftCollateralAddress: `0x${string}`;
                                              principalAddress: `0x${string}`;
                                              principalAmount: bigint;
                                              startTime: bigint;
                                              duration: bigint;
                                              source: readonly {
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  principalAmount: bigint;
                                                  accruedInterest: bigint;
                                                  startTime: bigint;
                                                  aprBps: bigint;
                                              }[];
                                              id: string;
                                          };
                                          loanId: bigint;
                                          offerId: string;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        loan: LoanV4;
                                        loanId: bigint;
                                        nftReceiver?: `0x${string}`;
                                    }
                                    +
                                      +
                                    • +
                                      loan: LoanV4
                                    • +
                                    • +
                                      loanId: bigint
                                    • +
                                    • +
                                      Optional nftReceiver?: `0x${string}`
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          loanId: bigint;
                                          totalRepayment: bigint;
                                          fee: bigint;
                                      }>);
                                  }>

                                +
                                + +
                                +
                                + +
                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        renegotiationId: bigint;
                                        refinancings: {
                                            loan: LoanV4;
                                            newAprBps: bigint;
                                            sources: {
                                                source: {
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    principalAmount: bigint;
                                                    accruedInterest: bigint;
                                                    startTime: bigint;
                                                    aprBps: bigint;
                                                };
                                                refinancingPrincipal: bigint;
                                            }[];
                                        }[];
                                    }
                                    +
                                      +
                                    • +
                                      renegotiationId: bigint
                                    • +
                                    • +
                                      refinancings: {
                                          loan: LoanV4;
                                          newAprBps: bigint;
                                          sources: {
                                              source: {
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  principalAmount: bigint;
                                                  accruedInterest: bigint;
                                                  startTime: bigint;
                                                  aprBps: bigint;
                                              };
                                              refinancingPrincipal: bigint;
                                          }[];
                                      }[]
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          results: {
                                              renegotiationId: bigint;
                                              oldLoanId: bigint;
                                              newLoanId: bigint;
                                              loan: {
                                                  borrower: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  startTime: bigint;
                                                  duration: bigint;
                                                  source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                              };
                                              fee: bigint;
                                          }[];
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        offer: {
                                            renegotiationId: bigint;
                                            loanId: bigint;
                                            lender: `0x${string}`;
                                            fee: bigint;
                                            signer: `0x${string}`;
                                            targetPrincipal: readonly bigint[];
                                            principalAmount: bigint;
                                            aprBps: bigint;
                                            expirationTime: bigint;
                                            duration: bigint;
                                            strictImprovement: boolean;
                                        };
                                        signature: `0x${string}`;
                                        loan: LoanV4;
                                    }
                                    +
                                      +
                                    • +
                                      offer: {
                                          renegotiationId: bigint;
                                          loanId: bigint;
                                          lender: `0x${string}`;
                                          fee: bigint;
                                          signer: `0x${string}`;
                                          targetPrincipal: readonly bigint[];
                                          principalAmount: bigint;
                                          aprBps: bigint;
                                          expirationTime: bigint;
                                          duration: bigint;
                                          strictImprovement: boolean;
                                      }
                                      +
                                        +
                                      • +
                                        renegotiationId: bigint
                                      • +
                                      • +
                                        loanId: bigint
                                      • +
                                      • +
                                        lender: `0x${string}`
                                      • +
                                      • +
                                        fee: bigint
                                      • +
                                      • +
                                        signer: `0x${string}`
                                      • +
                                      • +
                                        targetPrincipal: readonly bigint[]
                                      • +
                                      • +
                                        principalAmount: bigint
                                      • +
                                      • +
                                        aprBps: bigint
                                      • +
                                      • +
                                        expirationTime: bigint
                                      • +
                                      • +
                                        duration: bigint
                                      • +
                                      • +
                                        strictImprovement: boolean
                                    • +
                                    • +
                                      signature: `0x${string}`
                                    • +
                                    • +
                                      loan: LoanV4
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          loan: {
                                              contractAddress: `0x${string}`;
                                              borrower: `0x${string}`;
                                              nftCollateralTokenId: bigint;
                                              nftCollateralAddress: `0x${string}`;
                                              principalAddress: `0x${string}`;
                                              principalAmount: bigint;
                                              startTime: bigint;
                                              duration: bigint;
                                              source: readonly {
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  principalAmount: bigint;
                                                  accruedInterest: bigint;
                                                  startTime: bigint;
                                                  aprBps: bigint;
                                              }[];
                                              id: string;
                                          };
                                          loanId: bigint;
                                          renegotiationId: string;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        offer: {
                                            renegotiationId: bigint;
                                            loanId: bigint;
                                            lender: `0x${string}`;
                                            fee: bigint;
                                            signer: `0x${string}`;
                                            targetPrincipal: readonly bigint[];
                                            principalAmount: bigint;
                                            aprBps: bigint;
                                            expirationTime: bigint;
                                            duration: bigint;
                                            strictImprovement: boolean;
                                        };
                                        loan: LoanV4;
                                    }
                                    +
                                      +
                                    • +
                                      offer: {
                                          renegotiationId: bigint;
                                          loanId: bigint;
                                          lender: `0x${string}`;
                                          fee: bigint;
                                          signer: `0x${string}`;
                                          targetPrincipal: readonly bigint[];
                                          principalAmount: bigint;
                                          aprBps: bigint;
                                          expirationTime: bigint;
                                          duration: bigint;
                                          strictImprovement: boolean;
                                      }
                                      +
                                        +
                                      • +
                                        renegotiationId: bigint
                                      • +
                                      • +
                                        loanId: bigint
                                      • +
                                      • +
                                        lender: `0x${string}`
                                      • +
                                      • +
                                        fee: bigint
                                      • +
                                      • +
                                        signer: `0x${string}`
                                      • +
                                      • +
                                        targetPrincipal: readonly bigint[]
                                      • +
                                      • +
                                        principalAmount: bigint
                                      • +
                                      • +
                                        aprBps: bigint
                                      • +
                                      • +
                                        expirationTime: bigint
                                      • +
                                      • +
                                        duration: bigint
                                      • +
                                      • +
                                        strictImprovement: boolean
                                    • +
                                    • +
                                      loan: LoanV4
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          loan: {
                                              contractAddress: `0x${string}`;
                                              borrower: `0x${string}`;
                                              nftCollateralTokenId: bigint;
                                              nftCollateralAddress: `0x${string}`;
                                              principalAddress: `0x${string}`;
                                              principalAmount: bigint;
                                              startTime: bigint;
                                              duration: bigint;
                                              source: readonly {
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  principalAmount: bigint;
                                                  accruedInterest: bigint;
                                                  startTime: bigint;
                                                  aprBps: bigint;
                                              }[];
                                              id: string;
                                          };
                                          loanId: bigint;
                                          renegotiationId: string;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          loan: {
                                              contractAddress: `0x${string}`;
                                              borrower: `0x${string}`;
                                              nftCollateralTokenId: bigint;
                                              nftCollateralAddress: `0x${string}`;
                                              principalAddress: `0x${string}`;
                                              principalAmount: bigint;
                                              startTime: bigint;
                                              duration: bigint;
                                              tranche: readonly {
                                                  loanId: bigint;
                                                  floor: bigint;
                                                  principalAmount: bigint;
                                                  lender: `0x${string}`;
                                                  accruedInterest: bigint;
                                                  startTime: bigint;
                                                  aprBps: bigint;
                                              }[];
                                              protocolFee: bigint;
                                              id: string;
                                          };
                                          loanId: bigint;
                                          renegotiationId: string;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          loan: {
                                              contractAddress: `0x${string}`;
                                              borrower: `0x${string}`;
                                              nftCollateralTokenId: bigint;
                                              nftCollateralAddress: `0x${string}`;
                                              principalAddress: `0x${string}`;
                                              principalAmount: bigint;
                                              startTime: bigint;
                                              duration: bigint;
                                              tranche: readonly {
                                                  loanId: bigint;
                                                  floor: bigint;
                                                  principalAmount: bigint;
                                                  lender: `0x${string}`;
                                                  accruedInterest: bigint;
                                                  startTime: bigint;
                                                  aprBps: bigint;
                                              }[];
                                              protocolFee: bigint;
                                              id: string;
                                          };
                                          loanId: bigint;
                                          offerIds: string[];
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          results: {
                                              loanId: bigint;
                                              delegate: `0x${string}`;
                                              value: boolean;
                                          }[];
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          loan: {
                                              loanId: bigint;
                                              contractAddress: `0x${string}`;
                                              borrower: `0x${string}`;
                                              nftCollateralTokenId: bigint;
                                              nftCollateralAddress: `0x${string}`;
                                              principalAddress: `0x${string}`;
                                              principalAmount: bigint;
                                              startTime: bigint | bigint & Date;
                                              duration: bigint;
                                              source: readonly {
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  principalAmount: bigint;
                                                  accruedInterest: bigint;
                                                  startTime: bigint;
                                                  aprBps: bigint;
                                              }[];
                                          };
                                          value: boolean;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          delegate: `0x${string}`;
                                          collection: `0x${string}`;
                                          tokenId: bigint;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          results: ({
                                              loanId: bigint;
                                              offerId: bigint;
                                              loan: {
                                                  borrower: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  startTime: bigint;
                                                  duration: bigint;
                                                  source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                              };
                                              lender: `0x${string}`;
                                              borrower: `0x${string}`;
                                              fee: bigint;
                                          } | {
                                              delegate: `0x${string}`;
                                              collection: `0x${string}`;
                                              tokenId: bigint;
                                          })[];
                                          loan: {
                                              contractAddress: `0x${string}`;
                                              borrower: `0x${string}`;
                                              nftCollateralTokenId: bigint;
                                              nftCollateralAddress: `0x${string}`;
                                              principalAddress: `0x${string}`;
                                              principalAmount: bigint;
                                              startTime: bigint;
                                              duration: bigint;
                                              source: readonly {
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  principalAmount: bigint;
                                                  accruedInterest: bigint;
                                                  startTime: bigint;
                                                  aprBps: bigint;
                                              }[];
                                              id: string;
                                          };
                                          loanId: bigint;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    __namedParameters: {
                                        loan: LoanV4;
                                        loanId: bigint;
                                    }
                                    +
                                      +
                                    • +
                                      loan: LoanV4
                                    • +
                                    • +
                                      loanId: bigint
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<{
                                          loanId: bigint;
                                      }>);
                                  }>

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    calldata: `0x${string}`
                                  +

                                  Returns `0x${string}`

                                +
                                + +
                                  + +
                                • +
                                  +

                                  Parameters

                                  +
                                    +
                                  • +
                                    data: `0x${string}`
                                  +

                                  Returns Promise<{
                                      txHash: `0x${string}`;
                                      waitTxInBlock: (() => Promise<TransactionReceipt>);
                                  }>

                                +
                                +

                                Properties

                                +
                                + +
                                abi: readonly [{
                                    stateMutability: "nonpayable";
                                    type: "constructor";
                                    inputs: readonly [{
                                        name: "loanLiquidator";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "protocolFee";
                                        internalType: "struct IBaseLoan.ProtocolFee";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "recipient";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fraction";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        name: "currencyManager";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "collectionManager";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "maxSources";
                                        internalType: "uint8";
                                        type: "uint8";
                                    }];
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "AddressZeroError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_offerId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "CancelledOrExecutedOfferError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_offerId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "CancelledRenegotiationOffer";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_renegotiationId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "CancelledRenegotiationOfferError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "CannotLiquidateError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "CollectionNotWhitelistedError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "CurrencyNotWhitelistedError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "ExpiredLoanError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_expirationTime";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "ExpiredOfferError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_expirationTime";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "ExpiredRenegotiationOfferError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "InvalidBorrowerError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "InvalidCallbackError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "InvalidCollateralIdError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "InvalidLiquidationError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "InvalidLoanError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_fraction";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "InvalidProtocolFeeError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "InvalidRenegotiationOfferError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "InvalidSignatureError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "InvalidSignerError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "LengthMismatchError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_liquidator";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "LiquidatorOnlyError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "LoanExpiredError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_expirationTime";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "LoanNotDueError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "LoanNotFoundError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_newMinOfferId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "_minOfferId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "LowOfferIdError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_newMinRenegotiationOfferId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "_minOfferId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "LowRenegotiationOfferIdError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "MaxCapacityExceededError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_id";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "NotMintedError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "NotStrictlyImprovedError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "OnlyBorrowerCallableError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "OnlyLenderOrSignerCallableError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "PartialOfferCannotChangeDurationError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "PartialOfferCannotHaveFeeError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "RefinanceFullError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "RepaymentError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "sourcePrincipal";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "loanPrincipal";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "TargetPrincipalTooLowError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_pendingProtocolFeeSetTime";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "TooEarlyError";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "sources";
                                        internalType: "uint8";
                                        type: "uint8";
                                    }];
                                    name: "TooManySourcesError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "Unauthorized";
                                }, {
                                    type: "error";
                                    inputs: readonly [{
                                        name: "_authorized";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "UnauthorizedError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "ZeroAddressError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "ZeroDurationError";
                                }, {
                                    type: "error";
                                    inputs: readonly [];
                                    name: "ZeroInterestError";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "lender";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }, {
                                        name: "minOfferId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "AllOffersCancelled";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "lender";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }, {
                                        name: "minRenegotiationId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "AllRenegotiationOffersCancelled";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "lender";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }, {
                                        name: "signer";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }];
                                    name: "ApprovedSigner";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "minimum";
                                        internalType: "struct IBaseLoan.ImprovementMinimum";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "interest";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        indexed: false;
                                    }];
                                    name: "ImprovementMinimumUpdated";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "newDuration";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "LiquidationAuctionDurationUpdated";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "liquidator";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }];
                                    name: "LiquidationContractUpdated";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }, {
                                        name: "offerId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }, {
                                        name: "loan";
                                        internalType: "struct IMultiSourceLoan.Loan";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                        indexed: false;
                                    }, {
                                        name: "fee";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "LoanEmitted";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "LoanForeclosed";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }, {
                                        name: "repayment";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "LoanLiquidated";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "renegotiationId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }, {
                                        name: "oldLoanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }, {
                                        name: "newLoanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }, {
                                        name: "loan";
                                        internalType: "struct IMultiSourceLoan.Loan";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                        indexed: false;
                                    }, {
                                        name: "fee";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "LoanRefinanced";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }, {
                                        name: "totalRepayment";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }, {
                                        name: "fee";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "LoanRepaid";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }, {
                                        name: "liquidator";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }];
                                    name: "LoanSentToLiquidator";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "newMax";
                                        internalType: "uint8";
                                        type: "uint8";
                                        indexed: false;
                                    }];
                                    name: "MaxSourcesUpdated";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "lender";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }, {
                                        name: "offerId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "OfferCancelled";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "user";
                                        internalType: "address";
                                        type: "address";
                                        indexed: true;
                                    }, {
                                        name: "newOwner";
                                        internalType: "address";
                                        type: "address";
                                        indexed: true;
                                    }];
                                    name: "OwnershipTransferred";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "fee";
                                        internalType: "struct IBaseLoan.ProtocolFee";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "recipient";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fraction";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        indexed: false;
                                    }];
                                    name: "ProtocolFeePendingUpdate";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "fee";
                                        internalType: "struct IBaseLoan.ProtocolFee";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "recipient";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fraction";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        indexed: false;
                                    }];
                                    name: "ProtocolFeeUpdated";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "lender";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }, {
                                        name: "renegotiationId";
                                        internalType: "uint256";
                                        type: "uint256";
                                        indexed: false;
                                    }];
                                    name: "RenegotiationOfferCancelled";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "contract_added";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }];
                                    name: "WhitelistedCallbackContractAdded";
                                }, {
                                    type: "event";
                                    anonymous: false;
                                    inputs: readonly [{
                                        name: "contract_removed";
                                        internalType: "address";
                                        type: "address";
                                        indexed: false;
                                    }];
                                    name: "WhitelistedCallbackContractRemoved";
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "DOMAIN_SEPARATOR";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "bytes32";
                                        type: "bytes32";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "FEE_UPDATE_NOTICE";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "INITIAL_DOMAIN_SEPARATOR";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "bytes32";
                                        type: "bytes32";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "MAX_PROTOCOL_FEE";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_contract";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "addWhitelistedCallbackContract";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_signer";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "approveSigner";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_minOfferId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "cancelAllOffers";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_minRenegotiationId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "cancelAllRenegotiationOffers";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_offerId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "cancelOffer";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_offerIds";
                                        internalType: "uint256[]";
                                        type: "uint256[]";
                                    }];
                                    name: "cancelOffers";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_renegotiationId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "cancelRenegotiationOffer";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_renegotiationIds";
                                        internalType: "uint256[]";
                                        type: "uint256[]";
                                    }];
                                    name: "cancelRenegotiationOffers";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_loanOffer";
                                        internalType: "struct IBaseLoan.LoanOffer";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "capacity";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "signer";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "requiresLiquidation";
                                            internalType: "bool";
                                            type: "bool";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "aprBps";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "validators";
                                            internalType: "struct IBaseLoan.OfferValidator[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "validator";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "arguments";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                        }];
                                    }, {
                                        name: "_tokenId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "_lenderOfferSignature";
                                        internalType: "bytes";
                                        type: "bytes";
                                    }, {
                                        name: "_withCallback";
                                        internalType: "bool";
                                        type: "bool";
                                    }];
                                    name: "emitLoan";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "";
                                        internalType: "struct IMultiSourceLoan.Loan";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "getApprovedSigner";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getCollectionManager";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getCurrencyManager";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getImprovementMinimum";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "struct IBaseLoan.ImprovementMinimum";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "interest";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getLiquidationAuctionDuration";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint48";
                                        type: "uint48";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getLiquidator";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "getLoanHash";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "bytes32";
                                        type: "bytes32";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getMaxSources";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint8";
                                        type: "uint8";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_loanPrincipal";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "getMinSourcePrincipal";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getPendingProtocolFee";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "struct IBaseLoan.ProtocolFee";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "recipient";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fraction";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getPendingProtocolFeeSetTime";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getProtocolFee";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "struct IBaseLoan.ProtocolFee";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "recipient";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fraction";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "getTotalLoansIssued";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_lender";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_offerId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "getUsedCapacity";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "isOfferCancelled";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "bool";
                                        type: "bool";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                    name: "isRenegotiationOfferCancelled";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "bool";
                                        type: "bool";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_contract";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "isWhitelistedCallbackContract";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "bool";
                                        type: "bool";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "lenderMinOfferId";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "lenderMinRenegotiationOfferId";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "_loan";
                                        internalType: "struct IMultiSourceLoan.Loan";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }];
                                    name: "liquidateLoan";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_collateralAddress";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_collateralTokenId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "_loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "_repayment";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "_loan";
                                        internalType: "bytes";
                                        type: "bytes";
                                    }];
                                    name: "loanLiquidated";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "name";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "string";
                                        type: "string";
                                    }];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "";
                                        internalType: "bytes";
                                        type: "bytes";
                                    }];
                                    name: "onERC721Received";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "bytes4";
                                        type: "bytes4";
                                    }];
                                }, {
                                    stateMutability: "view";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "owner";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_renegotiationOffer";
                                        internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "signer";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "targetPrincipal";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "aprBps";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "strictImprovement";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        name: "_loan";
                                        internalType: "struct IMultiSourceLoan.Loan";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        name: "_renegotiationOfferSignature";
                                        internalType: "bytes";
                                        type: "bytes";
                                    }];
                                    name: "refinanceFull";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "";
                                        internalType: "struct IMultiSourceLoan.Loan";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_renegotiationOffer";
                                        internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "signer";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "targetPrincipal";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "aprBps";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "strictImprovement";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        name: "_loan";
                                        internalType: "struct IMultiSourceLoan.Loan";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }];
                                    name: "refinancePartial";
                                    outputs: readonly [{
                                        name: "";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "";
                                        internalType: "struct IMultiSourceLoan.Loan";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_renegotiationOffer";
                                        internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                        type: "tuple[]";
                                        components: readonly [{
                                            name: "renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "signer";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "targetPrincipal";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "aprBps";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "strictImprovement";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        name: "_loan";
                                        internalType: "struct IMultiSourceLoan.Loan[]";
                                        type: "tuple[]";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }];
                                    name: "refinancePartialBatch";
                                    outputs: readonly [{
                                        name: "loanId";
                                        internalType: "uint256[]";
                                        type: "uint256[]";
                                    }, {
                                        name: "loans";
                                        internalType: "struct IMultiSourceLoan.Loan[]";
                                        type: "tuple[]";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_contract";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "removeWhitelistedCallbackContract";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_collateralTo";
                                        internalType: "address";
                                        type: "address";
                                    }, {
                                        name: "_loanId";
                                        internalType: "uint256";
                                        type: "uint256";
                                    }, {
                                        name: "_loan";
                                        internalType: "struct IMultiSourceLoan.Loan";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "nftCollateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "nftCollateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "startTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "source";
                                            internalType: "struct IMultiSourceLoan.Source[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "accruedInterest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        name: "_withCallback";
                                        internalType: "bool";
                                        type: "bool";
                                    }];
                                    name: "repayLoan";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "maxSources";
                                        internalType: "uint8";
                                        type: "uint8";
                                    }];
                                    name: "setMaxSources";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [];
                                    name: "setProtocolFee";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "newOwner";
                                        internalType: "address";
                                        type: "address";
                                    }];
                                    name: "transferOwnership";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_newMinimum";
                                        internalType: "struct IBaseLoan.ImprovementMinimum";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "interest";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "duration";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }];
                                    name: "updateImprovementMinimum";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_newDuration";
                                        internalType: "uint48";
                                        type: "uint48";
                                    }];
                                    name: "updateLiquidationAuctionDuration";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "loanLiquidator";
                                        internalType: "contract ILoanLiquidator";
                                        type: "address";
                                    }];
                                    name: "updateLiquidationContract";
                                    outputs: readonly [];
                                }, {
                                    stateMutability: "nonpayable";
                                    type: "function";
                                    inputs: readonly [{
                                        name: "_newProtocolFee";
                                        internalType: "struct IBaseLoan.ProtocolFee";
                                        type: "tuple";
                                        components: readonly [{
                                            name: "recipient";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "fraction";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }];
                                    name: "updateProtocolFee";
                                    outputs: readonly [];
                                }]
                                +
                                + +
                                address: `0x${string}`
                                +
                                + +
                                bcClient: {}
                                +
                                +

                                Type declaration

                                +
                                  +
                                  + +
                                  wallet: {}
                                  +
                                  +

                                  Type declaration

                                  +
                                    +
                                    + +
                                    contract: GetContractReturnType<readonly [{
                                        stateMutability: "nonpayable";
                                        type: "constructor";
                                        inputs: readonly [{
                                            name: "loanLiquidator";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "protocolFee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            name: "currencyManager";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "collectionManager";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "maxSources";
                                            internalType: "uint8";
                                            type: "uint8";
                                        }];
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "AddressZeroError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "CancelledOrExecutedOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "CancelledRenegotiationOffer";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "CancelledRenegotiationOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "CannotLiquidateError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "CollectionNotWhitelistedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "CurrencyNotWhitelistedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ExpiredLoanError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "ExpiredOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "ExpiredRenegotiationOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidBorrowerError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidCallbackError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidCollateralIdError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidLiquidationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "InvalidLoanError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_fraction";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "InvalidProtocolFeeError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidRenegotiationOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidSignatureError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidSignerError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "LengthMismatchError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_liquidator";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "LiquidatorOnlyError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "LoanExpiredError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LoanNotDueError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LoanNotFoundError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_newMinOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LowOfferIdError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_newMinRenegotiationOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LowRenegotiationOfferIdError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "MaxCapacityExceededError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_id";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "NotMintedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "NotStrictlyImprovedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "OnlyBorrowerCallableError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "OnlyLenderOrSignerCallableError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "PartialOfferCannotChangeDurationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "PartialOfferCannotHaveFeeError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "RefinanceFullError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "RepaymentError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "sourcePrincipal";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "loanPrincipal";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "TargetPrincipalTooLowError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_pendingProtocolFeeSetTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "TooEarlyError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "sources";
                                            internalType: "uint8";
                                            type: "uint8";
                                        }];
                                        name: "TooManySourcesError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "Unauthorized";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_authorized";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "UnauthorizedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ZeroAddressError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ZeroDurationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ZeroInterestError";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "AllOffersCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "minRenegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "AllRenegotiationOffersCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "signer";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "ApprovedSigner";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "minimum";
                                            internalType: "struct IBaseLoan.ImprovementMinimum";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "interest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "ImprovementMinimumUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "newDuration";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LiquidationAuctionDurationUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "liquidator";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "LiquidationContractUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            indexed: false;
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanEmitted";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanForeclosed";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "repayment";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanLiquidated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "oldLoanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "newLoanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            indexed: false;
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanRefinanced";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "totalRepayment";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanRepaid";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "liquidator";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "LoanSentToLiquidator";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "newMax";
                                            internalType: "uint8";
                                            type: "uint8";
                                            indexed: false;
                                        }];
                                        name: "MaxSourcesUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "OfferCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "user";
                                            internalType: "address";
                                            type: "address";
                                            indexed: true;
                                        }, {
                                            name: "newOwner";
                                            internalType: "address";
                                            type: "address";
                                            indexed: true;
                                        }];
                                        name: "OwnershipTransferred";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "fee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "ProtocolFeePendingUpdate";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "fee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "ProtocolFeeUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "RenegotiationOfferCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "contract_added";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "WhitelistedCallbackContractAdded";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "contract_removed";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "WhitelistedCallbackContractRemoved";
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "DOMAIN_SEPARATOR";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "FEE_UPDATE_NOTICE";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "INITIAL_DOMAIN_SEPARATOR";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "MAX_PROTOCOL_FEE";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_contract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "addWhitelistedCallbackContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_signer";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "approveSigner";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelAllOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_minRenegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelAllRenegotiationOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelOffer";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerIds";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }];
                                        name: "cancelOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelRenegotiationOffer";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_renegotiationIds";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }];
                                        name: "cancelRenegotiationOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanOffer";
                                            internalType: "struct IBaseLoan.LoanOffer";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "capacity";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "requiresLiquidation";
                                                internalType: "bool";
                                                type: "bool";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "validators";
                                                internalType: "struct IBaseLoan.OfferValidator[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "validator";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "arguments";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }];
                                        }, {
                                            name: "_tokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_lenderOfferSignature";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }, {
                                            name: "_withCallback";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                        name: "emitLoan";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "getApprovedSigner";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getCollectionManager";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getCurrencyManager";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getImprovementMinimum";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "struct IBaseLoan.ImprovementMinimum";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "interest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getLiquidationAuctionDuration";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint48";
                                            type: "uint48";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getLiquidator";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "getLoanHash";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getMaxSources";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint8";
                                            type: "uint8";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanPrincipal";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "getMinSourcePrincipal";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getPendingProtocolFee";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getPendingProtocolFeeSetTime";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getProtocolFee";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getTotalLoansIssued";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "getUsedCapacity";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "isOfferCancelled";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "isRenegotiationOfferCancelled";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_contract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "isWhitelistedCallbackContract";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "lenderMinOfferId";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "lenderMinRenegotiationOfferId";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                        name: "liquidateLoan";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_collateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_collateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_repayment";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "loanLiquidated";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "name";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "string";
                                            type: "string";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "onERC721Received";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes4";
                                            type: "bytes4";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "owner";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationOffer";
                                            internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "targetPrincipal";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "strictImprovement";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            name: "_renegotiationOfferSignature";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "refinanceFull";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationOffer";
                                            internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "targetPrincipal";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "strictImprovement";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                        name: "refinancePartial";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationOffer";
                                            internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "targetPrincipal";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "strictImprovement";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                        name: "refinancePartialBatch";
                                        outputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }, {
                                            name: "loans";
                                            internalType: "struct IMultiSourceLoan.Loan[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_contract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "removeWhitelistedCallbackContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_collateralTo";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            name: "_withCallback";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                        name: "repayLoan";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "maxSources";
                                            internalType: "uint8";
                                            type: "uint8";
                                        }];
                                        name: "setMaxSources";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "setProtocolFee";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "newOwner";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "transferOwnership";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newMinimum";
                                            internalType: "struct IBaseLoan.ImprovementMinimum";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "interest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                        name: "updateImprovementMinimum";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newDuration";
                                            internalType: "uint48";
                                            type: "uint48";
                                        }];
                                        name: "updateLiquidationAuctionDuration";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "loanLiquidator";
                                            internalType: "contract ILoanLiquidator";
                                            type: "address";
                                        }];
                                        name: "updateLiquidationContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newProtocolFee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                        name: "updateProtocolFee";
                                        outputs: readonly [];
                                    }], {} | {}>
                                    +
                                    + +
                                    safeContractWrite: {
                                        transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                        liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                                        onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                        addWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                        approveSigner: ((args, options?) => Promise<`0x${string}`>);
                                        cancelAllOffers: ((args, options?) => Promise<`0x${string}`>);
                                        cancelAllRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>);
                                        cancelOffer: ((args, options?) => Promise<`0x${string}`>);
                                        cancelOffers: ((args, options?) => Promise<`0x${string}`>);
                                        cancelRenegotiationOffer: ((args, options?) => Promise<`0x${string}`>);
                                        cancelRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>);
                                        loanLiquidated: ((args, options?) => Promise<`0x${string}`>);
                                        removeWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                        setProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                        updateImprovementMinimum: ((args, options?) => Promise<`0x${string}`>);
                                        updateLiquidationAuctionDuration: ((args, options?) => Promise<`0x${string}`>);
                                        updateLiquidationContract: ((args, options?) => Promise<`0x${string}`>);
                                        updateProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                        emitLoan: ((args, options?) => Promise<`0x${string}`>);
                                        refinanceFull: ((args, options?) => Promise<`0x${string}`>);
                                        refinancePartial: ((args, options?) => Promise<`0x${string}`>);
                                        refinancePartialBatch: ((args, options?) => Promise<`0x${string}`>);
                                        repayLoan: ((args, options?) => Promise<`0x${string}`>);
                                        setMaxSources: ((args, options?) => Promise<`0x${string}`>);
                                    }
                                    +
                                    +

                                    Type declaration

                                    +
                                      +
                                    • +
                                      transferOwnership: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      liquidateLoan: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [bigint, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }] | readonly [bigint, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }] & readonly [bigint, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      onERC721Received: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      addWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      approveSigner: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      cancelAllOffers: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`, bigint]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      cancelAllRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`, bigint]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      cancelOffer: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`, bigint]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      cancelOffers: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`, readonly bigint[]] | readonly [`0x${string}`, readonly bigint[]] & readonly [`0x${string}`, readonly bigint[]]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      cancelRenegotiationOffer: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`, bigint]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      cancelRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`, readonly bigint[]] | readonly [`0x${string}`, readonly bigint[]] & readonly [`0x${string}`, readonly bigint[]]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      loanLiquidated: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`, bigint, bigint, bigint, `0x${string}`]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      removeWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      setProtocolFee: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: undefined | readonly []
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      updateImprovementMinimum: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [{
                                                principalAmount: bigint;
                                                interest: bigint;
                                                duration: bigint;
                                            }] | readonly [{
                                                principalAmount: bigint;
                                                interest: bigint;
                                                duration: bigint;
                                            }] & readonly [{
                                                principalAmount: bigint;
                                                interest: bigint;
                                                duration: bigint;
                                            }]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      updateLiquidationAuctionDuration: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [number]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      updateLiquidationContract: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      updateProtocolFee: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [{
                                                recipient: `0x${string}`;
                                                fraction: bigint;
                                            }] | readonly [{
                                                recipient: `0x${string}`;
                                                fraction: bigint;
                                            }] & readonly [{
                                                recipient: `0x${string}`;
                                                fraction: bigint;
                                            }]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      emitLoan: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [{
                                                offerId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                borrower: `0x${string}`;
                                                capacity: bigint;
                                                signer: `0x${string}`;
                                                requiresLiquidation: Widen<boolean>;
                                                nftCollateralAddress: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[];
                                            }, bigint, `0x${string}`, Widen<boolean>] | readonly [{
                                                offerId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                borrower: `0x${string}`;
                                                capacity: bigint;
                                                signer: `0x${string}`;
                                                requiresLiquidation: boolean;
                                                nftCollateralAddress: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[];
                                            }, bigint, `0x${string}`, boolean] & readonly [{
                                                offerId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                borrower: `0x${string}`;
                                                capacity: bigint;
                                                signer: `0x${string}`;
                                                requiresLiquidation: Widen<boolean>;
                                                nftCollateralAddress: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[];
                                            }, bigint, `0x${string}`, Widen<boolean>]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      refinanceFull: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [{
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                signer: `0x${string}`;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                strictImprovement: Widen<boolean>;
                                            }, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }, `0x${string}`] | readonly [{
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                signer: `0x${string}`;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                strictImprovement: boolean;
                                            }, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }, `0x${string}`] & readonly [{
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                signer: `0x${string}`;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                strictImprovement: Widen<boolean>;
                                            }, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }, `0x${string}`]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      refinancePartial: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [{
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                signer: `0x${string}`;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                strictImprovement: Widen<boolean>;
                                            }, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }] | readonly [{
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                signer: `0x${string}`;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                strictImprovement: boolean;
                                            }, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }] & readonly [{
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                signer: `0x${string}`;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                strictImprovement: Widen<boolean>;
                                            }, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      refinancePartialBatch: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [readonly {
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                signer: `0x${string}`;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                strictImprovement: Widen<boolean>;
                                            }[], readonly {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly { loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[];
                                            }[]] | readonly [readonly {
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                signer: `0x${string}`;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                strictImprovement: boolean;
                                            }[], readonly {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly { loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[];
                                            }[]] & readonly [readonly {
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                signer: `0x${string}`;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                strictImprovement: Widen<boolean>;
                                            }[], readonly {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly { loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[];
                                            }[]]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      repayLoan: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [`0x${string}`, bigint, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }, Widen<boolean>] | readonly [`0x${string}`, bigint, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }, boolean] & readonly [`0x${string}`, bigint, {
                                                borrower: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                startTime: bigint;
                                                duration: bigint;
                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                            }, Widen<boolean>]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    • +
                                    • +
                                      setMaxSources: ((args, options?) => Promise<`0x${string}`>)
                                      +
                                        +
                                      • +
                                          +
                                        • (args, options?): Promise<`0x${string}`>
                                        • +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            args: readonly [number]
                                          • +
                                          • +
                                            Optional options: {
                                                value?: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              Optional value?: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                    +
                                    + +
                                    parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                        stateMutability: "nonpayable";
                                        type: "constructor";
                                        inputs: readonly [{
                                            name: "loanLiquidator";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "protocolFee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            name: "currencyManager";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "collectionManager";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "maxSources";
                                            internalType: "uint8";
                                            type: "uint8";
                                        }];
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "AddressZeroError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "CancelledOrExecutedOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "CancelledRenegotiationOffer";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "CancelledRenegotiationOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "CannotLiquidateError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "CollectionNotWhitelistedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "CurrencyNotWhitelistedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ExpiredLoanError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "ExpiredOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "ExpiredRenegotiationOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidBorrowerError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidCallbackError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidCollateralIdError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidLiquidationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "InvalidLoanError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_fraction";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "InvalidProtocolFeeError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidRenegotiationOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidSignatureError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidSignerError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "LengthMismatchError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_liquidator";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "LiquidatorOnlyError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "LoanExpiredError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LoanNotDueError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LoanNotFoundError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_newMinOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LowOfferIdError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_newMinRenegotiationOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LowRenegotiationOfferIdError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "MaxCapacityExceededError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_id";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "NotMintedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "NotStrictlyImprovedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "OnlyBorrowerCallableError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "OnlyLenderOrSignerCallableError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "PartialOfferCannotChangeDurationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "PartialOfferCannotHaveFeeError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "RefinanceFullError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "RepaymentError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "sourcePrincipal";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "loanPrincipal";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "TargetPrincipalTooLowError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_pendingProtocolFeeSetTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "TooEarlyError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "sources";
                                            internalType: "uint8";
                                            type: "uint8";
                                        }];
                                        name: "TooManySourcesError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "Unauthorized";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_authorized";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "UnauthorizedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ZeroAddressError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ZeroDurationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ZeroInterestError";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "AllOffersCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "minRenegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "AllRenegotiationOffersCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "signer";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "ApprovedSigner";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "minimum";
                                            internalType: "struct IBaseLoan.ImprovementMinimum";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "interest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "ImprovementMinimumUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "newDuration";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LiquidationAuctionDurationUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "liquidator";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "LiquidationContractUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            indexed: false;
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanEmitted";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanForeclosed";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "repayment";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanLiquidated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "oldLoanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "newLoanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            indexed: false;
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanRefinanced";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "totalRepayment";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanRepaid";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "liquidator";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "LoanSentToLiquidator";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "newMax";
                                            internalType: "uint8";
                                            type: "uint8";
                                            indexed: false;
                                        }];
                                        name: "MaxSourcesUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "OfferCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "user";
                                            internalType: "address";
                                            type: "address";
                                            indexed: true;
                                        }, {
                                            name: "newOwner";
                                            internalType: "address";
                                            type: "address";
                                            indexed: true;
                                        }];
                                        name: "OwnershipTransferred";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "fee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "ProtocolFeePendingUpdate";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "fee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "ProtocolFeeUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "RenegotiationOfferCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "contract_added";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "WhitelistedCallbackContractAdded";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "contract_removed";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "WhitelistedCallbackContractRemoved";
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "DOMAIN_SEPARATOR";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "FEE_UPDATE_NOTICE";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "INITIAL_DOMAIN_SEPARATOR";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "MAX_PROTOCOL_FEE";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_contract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "addWhitelistedCallbackContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_signer";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "approveSigner";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelAllOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_minRenegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelAllRenegotiationOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelOffer";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerIds";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }];
                                        name: "cancelOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelRenegotiationOffer";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_renegotiationIds";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }];
                                        name: "cancelRenegotiationOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanOffer";
                                            internalType: "struct IBaseLoan.LoanOffer";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "capacity";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "requiresLiquidation";
                                                internalType: "bool";
                                                type: "bool";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "validators";
                                                internalType: "struct IBaseLoan.OfferValidator[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "validator";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "arguments";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }];
                                        }, {
                                            name: "_tokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_lenderOfferSignature";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }, {
                                            name: "_withCallback";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                        name: "emitLoan";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "getApprovedSigner";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getCollectionManager";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getCurrencyManager";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getImprovementMinimum";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "struct IBaseLoan.ImprovementMinimum";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "interest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getLiquidationAuctionDuration";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint48";
                                            type: "uint48";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getLiquidator";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "getLoanHash";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getMaxSources";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint8";
                                            type: "uint8";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanPrincipal";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "getMinSourcePrincipal";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getPendingProtocolFee";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getPendingProtocolFeeSetTime";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getProtocolFee";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getTotalLoansIssued";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "getUsedCapacity";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "isOfferCancelled";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "isRenegotiationOfferCancelled";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_contract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "isWhitelistedCallbackContract";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "lenderMinOfferId";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "lenderMinRenegotiationOfferId";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                        name: "liquidateLoan";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_collateralAddress";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_collateralTokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_repayment";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "loanLiquidated";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "name";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "string";
                                            type: "string";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "onERC721Received";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes4";
                                            type: "bytes4";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "owner";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationOffer";
                                            internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "targetPrincipal";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "strictImprovement";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            name: "_renegotiationOfferSignature";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "refinanceFull";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationOffer";
                                            internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "targetPrincipal";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "strictImprovement";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                        name: "refinancePartial";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationOffer";
                                            internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "targetPrincipal";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "strictImprovement";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                        name: "refinancePartialBatch";
                                        outputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }, {
                                            name: "loans";
                                            internalType: "struct IMultiSourceLoan.Loan[]";
                                            type: "tuple[]";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_contract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "removeWhitelistedCallbackContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_collateralTo";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            name: "_withCallback";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                        name: "repayLoan";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "maxSources";
                                            internalType: "uint8";
                                            type: "uint8";
                                        }];
                                        name: "setMaxSources";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "setProtocolFee";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "newOwner";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "transferOwnership";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newMinimum";
                                            internalType: "struct IBaseLoan.ImprovementMinimum";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "interest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                        name: "updateImprovementMinimum";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newDuration";
                                            internalType: "uint48";
                                            type: "uint48";
                                        }];
                                        name: "updateLiquidationAuctionDuration";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "loanLiquidator";
                                            internalType: "contract ILoanLiquidator";
                                            type: "address";
                                        }];
                                        name: "updateLiquidationContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newProtocolFee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                        name: "updateProtocolFee";
                                        outputs: readonly [];
                                    }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ApprovedSigner" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated")[]
                                        ? TFunctionName[number]
                                        : TFunctionName>)
                                    +
                                    +

                                    Type declaration

                                    +
                                      +
                                    • +
                                        +
                                      • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                                            stateMutability: "nonpayable";
                                            type: "constructor";
                                            inputs: readonly [{
                                                name: "loanLiquidator";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "protocolFee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "currencyManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "collectionManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "maxSources";
                                                internalType: "uint8";
                                                type: "uint8";
                                            }];
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "AddressZeroError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledOrExecutedOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledRenegotiationOffer";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CannotLiquidateError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CollectionNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CurrencyNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ExpiredLoanError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ExpiredOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ExpiredRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidBorrowerError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCallbackError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCollateralIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidLiquidationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidLoanError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidProtocolFeeError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidSignatureError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidSignerError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LengthMismatchError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_liquidator";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "LiquidatorOnlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LoanExpiredError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LoanNotDueError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LoanNotFoundError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinRenegotiationOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowRenegotiationOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "MaxCapacityExceededError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_id";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "NotMintedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "NotStrictlyImprovedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyBorrowerCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyLenderOrSignerCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "PartialOfferCannotChangeDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "PartialOfferCannotHaveFeeError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "RefinanceFullError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "RepaymentError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "sourcePrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanPrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TargetPrincipalTooLowError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_pendingProtocolFeeSetTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TooEarlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "sources";
                                                internalType: "uint8";
                                                type: "uint8";
                                            }];
                                            name: "TooManySourcesError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "Unauthorized";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_authorized";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "UnauthorizedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroAddressError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroInterestError";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "AllOffersCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "minRenegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "AllRenegotiationOffersCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "ApprovedSigner";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "minimum";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ImprovementMinimumUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newDuration";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LiquidationAuctionDurationUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LiquidationContractUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanEmitted";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanForeclosed";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "repayment";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanLiquidated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "oldLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "newLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRefinanced";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "totalRepayment";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRepaid";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LoanSentToLiquidator";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newMax";
                                                internalType: "uint8";
                                                type: "uint8";
                                                indexed: false;
                                            }];
                                            name: "MaxSourcesUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "OfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "user";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }, {
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }];
                                            name: "OwnershipTransferred";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeePendingUpdate";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeeUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "RenegotiationOfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contract_added";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractAdded";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contract_removed";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractRemoved";
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "FEE_UPDATE_NOTICE";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "INITIAL_DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MAX_PROTOCOL_FEE";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "addWhitelistedCallbackContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_signer";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "approveSigner";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelAllOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_minRenegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelAllRenegotiationOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelOffer";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerIds";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }];
                                            name: "cancelOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelRenegotiationOffer";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_renegotiationIds";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }];
                                            name: "cancelRenegotiationOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanOffer";
                                                internalType: "struct IBaseLoan.LoanOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "capacity";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "signer";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "requiresLiquidation";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "validators";
                                                    internalType: "struct IBaseLoan.OfferValidator[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "validator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "arguments";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                            }, {
                                                name: "_tokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_lenderOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }, {
                                                name: "_withCallback";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            name: "emitLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "getApprovedSigner";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCollectionManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCurrencyManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getImprovementMinimum";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidationAuctionDuration";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidator";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getLoanHash";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getMaxSources";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint8";
                                                type: "uint8";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanPrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getMinSourcePrincipal";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFeeSetTime";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getTotalLoansIssued";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getUsedCapacity";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isRenegotiationOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "isWhitelistedCallbackContract";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "lenderMinOfferId";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "lenderMinRenegotiationOfferId";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "liquidateLoan";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_collateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_collateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_repayment";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "loanLiquidated";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "name";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "string";
                                                type: "string";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "onERC721Received";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes4";
                                                type: "bytes4";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "owner";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "signer";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "strictImprovement";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_renegotiationOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "refinanceFull";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "signer";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "strictImprovement";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "refinancePartial";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "signer";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "strictImprovement";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "refinancePartialBatch";
                                            outputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "loans";
                                                internalType: "struct IMultiSourceLoan.Loan[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "removeWhitelistedCallbackContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_collateralTo";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_withCallback";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            name: "repayLoan";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "maxSources";
                                                internalType: "uint8";
                                                type: "uint8";
                                            }];
                                            name: "setMaxSources";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "setProtocolFee";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "transferOwnership";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newMinimum";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "updateImprovementMinimum";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newDuration";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                            name: "updateLiquidationAuctionDuration";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "loanLiquidator";
                                                internalType: "contract ILoanLiquidator";
                                                type: "address";
                                            }];
                                            name: "updateLiquidationContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newProtocolFee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "updateProtocolFee";
                                            outputs: readonly [];
                                        }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ApprovedSigner" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated")[]
                                            ? TFunctionName[number]
                                            : TFunctionName>
                                      • +
                                      • +
                                        +

                                        Type Parameters

                                        +
                                          +
                                        • +

                                          TFunctionName extends "OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ApprovedSigner" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated"

                                        +
                                        +

                                        Parameters

                                        +
                                          +
                                        • +
                                          eventName: TFunctionName
                                        • +
                                        • +
                                          logs: Log<bigint, number, false>[]
                                        +

                                        Returns ParseEventLogsReturnType<readonly [{
                                            stateMutability: "nonpayable";
                                            type: "constructor";
                                            inputs: readonly [{
                                                name: "loanLiquidator";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "protocolFee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "currencyManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "collectionManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "maxSources";
                                                internalType: "uint8";
                                                type: "uint8";
                                            }];
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "AddressZeroError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledOrExecutedOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledRenegotiationOffer";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CannotLiquidateError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CollectionNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CurrencyNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ExpiredLoanError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ExpiredOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ExpiredRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidBorrowerError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCallbackError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCollateralIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidLiquidationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidLoanError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidProtocolFeeError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidSignatureError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidSignerError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LengthMismatchError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_liquidator";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "LiquidatorOnlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LoanExpiredError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LoanNotDueError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LoanNotFoundError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinRenegotiationOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowRenegotiationOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "MaxCapacityExceededError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_id";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "NotMintedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "NotStrictlyImprovedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyBorrowerCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyLenderOrSignerCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "PartialOfferCannotChangeDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "PartialOfferCannotHaveFeeError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "RefinanceFullError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "RepaymentError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "sourcePrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanPrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TargetPrincipalTooLowError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_pendingProtocolFeeSetTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TooEarlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "sources";
                                                internalType: "uint8";
                                                type: "uint8";
                                            }];
                                            name: "TooManySourcesError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "Unauthorized";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_authorized";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "UnauthorizedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroAddressError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroInterestError";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "AllOffersCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "minRenegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "AllRenegotiationOffersCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "signer";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "ApprovedSigner";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "minimum";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ImprovementMinimumUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newDuration";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LiquidationAuctionDurationUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LiquidationContractUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanEmitted";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanForeclosed";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "repayment";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanLiquidated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "oldLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "newLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRefinanced";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "totalRepayment";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRepaid";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LoanSentToLiquidator";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newMax";
                                                internalType: "uint8";
                                                type: "uint8";
                                                indexed: false;
                                            }];
                                            name: "MaxSourcesUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "OfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "user";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }, {
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }];
                                            name: "OwnershipTransferred";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeePendingUpdate";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeeUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "RenegotiationOfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contract_added";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractAdded";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contract_removed";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractRemoved";
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "FEE_UPDATE_NOTICE";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "INITIAL_DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MAX_PROTOCOL_FEE";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "addWhitelistedCallbackContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_signer";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "approveSigner";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelAllOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_minRenegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelAllRenegotiationOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelOffer";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerIds";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }];
                                            name: "cancelOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelRenegotiationOffer";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_renegotiationIds";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }];
                                            name: "cancelRenegotiationOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanOffer";
                                                internalType: "struct IBaseLoan.LoanOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "capacity";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "signer";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "requiresLiquidation";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "validators";
                                                    internalType: "struct IBaseLoan.OfferValidator[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "validator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "arguments";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                            }, {
                                                name: "_tokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_lenderOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }, {
                                                name: "_withCallback";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            name: "emitLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "getApprovedSigner";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCollectionManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCurrencyManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getImprovementMinimum";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidationAuctionDuration";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidator";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getLoanHash";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getMaxSources";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint8";
                                                type: "uint8";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanPrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getMinSourcePrincipal";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFeeSetTime";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getTotalLoansIssued";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getUsedCapacity";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isRenegotiationOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "isWhitelistedCallbackContract";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "lenderMinOfferId";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "lenderMinRenegotiationOfferId";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "liquidateLoan";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_collateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_collateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_repayment";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "loanLiquidated";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "name";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "string";
                                                type: "string";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "onERC721Received";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes4";
                                                type: "bytes4";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "owner";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "signer";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "strictImprovement";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_renegotiationOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "refinanceFull";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "signer";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "strictImprovement";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "refinancePartial";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "signer";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "strictImprovement";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "refinancePartialBatch";
                                            outputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "loans";
                                                internalType: "struct IMultiSourceLoan.Loan[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "removeWhitelistedCallbackContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_collateralTo";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_withCallback";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            name: "repayLoan";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "maxSources";
                                                internalType: "uint8";
                                                type: "uint8";
                                            }];
                                            name: "setMaxSources";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "setProtocolFee";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "transferOwnership";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newMinimum";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "updateImprovementMinimum";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newDuration";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                            name: "updateLiquidationAuctionDuration";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "loanLiquidator";
                                                internalType: "contract ILoanLiquidator";
                                                type: "address";
                                            }];
                                            name: "updateLiquidationContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newProtocolFee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "updateProtocolFee";
                                            outputs: readonly [];
                                        }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ApprovedSigner" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated")[]
                                            ? TFunctionName[number]
                                            : TFunctionName>

                                    +
                                    + +
                                    +
                                    \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.MslV5.html b/docs/0.17.2/classes/Internal.MslV5.html new file mode 100644 index 00000000..bed3b6e8 --- /dev/null +++ b/docs/0.17.2/classes/Internal.MslV5.html @@ -0,0 +1,1333 @@ +MslV5 | Gondi JS SDK - v0.17.2
                                    +
                                    + +
                                    +
                                    +
                                    +
                                    + +

                                    Class MslV5

                                    +
                                    +

                                    Hierarchy

                                    +
                                    +
                                    +
                                    +
                                    + +
                                    +
                                    +

                                    Constructors

                                    +
                                    + +
                                    +
                                    +

                                    Methods

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            structToSign: {
                                                offerId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                borrower: `0x${string}`;
                                                capacity: bigint;
                                                nftCollateralAddress: `0x${string}`;
                                                nftCollateralTokenId: bigint;
                                                principalAddress: `0x${string}`;
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                                validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[];
                                            };
                                        }
                                        +
                                          +
                                        • +
                                          structToSign: {
                                              offerId: bigint;
                                              lender: `0x${string}`;
                                              fee: bigint;
                                              borrower: `0x${string}`;
                                              capacity: bigint;
                                              nftCollateralAddress: `0x${string}`;
                                              nftCollateralTokenId: bigint;
                                              principalAddress: `0x${string}`;
                                              principalAmount: bigint;
                                              aprBps: bigint;
                                              expirationTime: bigint;
                                              duration: bigint;
                                              validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[];
                                          }
                                          +
                                            +
                                          • +
                                            offerId: bigint
                                          • +
                                          • +
                                            lender: `0x${string}`
                                          • +
                                          • +
                                            fee: bigint
                                          • +
                                          • +
                                            borrower: `0x${string}`
                                          • +
                                          • +
                                            capacity: bigint
                                          • +
                                          • +
                                            nftCollateralAddress: `0x${string}`
                                          • +
                                          • +
                                            nftCollateralTokenId: bigint
                                          • +
                                          • +
                                            principalAddress: `0x${string}`
                                          • +
                                          • +
                                            principalAmount: bigint
                                          • +
                                          • +
                                            aprBps: bigint
                                          • +
                                          • +
                                            expirationTime: bigint
                                          • +
                                          • +
                                            duration: bigint
                                          • +
                                          • +
                                            validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[]
                                      +

                                      Returns Promise<`0x${string}`>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            structToSign: {
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                            };
                                        }
                                        +
                                          +
                                        • +
                                          structToSign: {
                                              renegotiationId: bigint;
                                              loanId: bigint;
                                              lender: `0x${string}`;
                                              fee: bigint;
                                              targetPrincipal: readonly bigint[];
                                              principalAmount: bigint;
                                              aprBps: bigint;
                                              expirationTime: bigint;
                                              duration: bigint;
                                          }
                                          +
                                            +
                                          • +
                                            renegotiationId: bigint
                                          • +
                                          • +
                                            loanId: bigint
                                          • +
                                          • +
                                            lender: `0x${string}`
                                          • +
                                          • +
                                            fee: bigint
                                          • +
                                          • +
                                            targetPrincipal: readonly bigint[]
                                          • +
                                          • +
                                            principalAmount: bigint
                                          • +
                                          • +
                                            aprBps: bigint
                                          • +
                                          • +
                                            expirationTime: bigint
                                          • +
                                          • +
                                            duration: bigint
                                      +

                                      Returns Promise<`0x${string}`>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            id: bigint;
                                        }
                                        +
                                          +
                                        • +
                                          id: bigint
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              lender: `0x${string}`;
                                              offerId: bigint;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            minId: bigint;
                                        }
                                        +
                                          +
                                        • +
                                          minId: bigint
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              lender: `0x${string}`;
                                              minOfferId: bigint;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            id: bigint;
                                        }
                                        +
                                          +
                                        • +
                                          id: bigint
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              lender: `0x${string}`;
                                              renegotiationId: bigint;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            minId: bigint;
                                        }
                                        +
                                          +
                                        • +
                                          minId: bigint
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              lender: `0x${string}`;
                                              minRenegotiationId: bigint;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              loan: {
                                                  contractAddress: `0x${string}`;
                                                  borrower: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  startTime: bigint;
                                                  duration: bigint;
                                                  source: readonly {
                                                      loanId: bigint;
                                                      lender: `0x${string}`;
                                                      principalAmount: bigint;
                                                      accruedInterest: bigint;
                                                      startTime: bigint;
                                                      aprBps: bigint;
                                                  }[];
                                                  id: string;
                                              };
                                              loanId: bigint;
                                              offerId: string;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            delegations: `0x${string}`[];
                                            emit: EmitLoanArgs;
                                        }
                                        +
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              results: ({
                                                  loanId: bigint;
                                                  offerId: bigint;
                                                  loan: {
                                                      borrower: `0x${string}`;
                                                      nftCollateralTokenId: bigint;
                                                      nftCollateralAddress: `0x${string}`;
                                                      principalAddress: `0x${string}`;
                                                      principalAmount: bigint;
                                                      startTime: bigint;
                                                      duration: bigint;
                                                      source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                  };
                                                  lender: `0x${string}`;
                                                  borrower: `0x${string}`;
                                                  fee: bigint;
                                              } | {
                                                  delegate: `0x${string}`;
                                                  collection: `0x${string}`;
                                                  tokenId: bigint;
                                              })[];
                                              loan: {
                                                  contractAddress: `0x${string}`;
                                                  borrower: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  startTime: bigint;
                                                  duration: bigint;
                                                  source: readonly {
                                                      loanId: bigint;
                                                      lender: `0x${string}`;
                                                      principalAmount: bigint;
                                                      accruedInterest: bigint;
                                                      startTime: bigint;
                                                      aprBps: bigint;
                                                  }[];
                                                  id: string;
                                              };
                                              loanId: bigint;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            loan: LoanV5;
                                            loanId: bigint;
                                        }
                                        +
                                          +
                                        • +
                                          loan: LoanV5
                                        • +
                                        • +
                                          loanId: bigint
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              loanId: bigint;
                                              totalRepayment: bigint;
                                              fee: bigint;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            loan: LoanV5;
                                        }
                                        +
                                      +

                                      Returns Promise<number>

                                    +
                                    + +
                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            renegotiationId: bigint;
                                            refinancings: {
                                                loan: LoanV5;
                                                newAprBps: bigint;
                                                sources: {
                                                    source: {
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        principalAmount: bigint;
                                                        accruedInterest: bigint;
                                                        startTime: bigint;
                                                        aprBps: bigint;
                                                    };
                                                    refinancingPrincipal: bigint;
                                                }[];
                                            }[];
                                        }
                                        +
                                          +
                                        • +
                                          renegotiationId: bigint
                                        • +
                                        • +
                                          refinancings: {
                                              loan: LoanV5;
                                              newAprBps: bigint;
                                              sources: {
                                                  source: {
                                                      loanId: bigint;
                                                      lender: `0x${string}`;
                                                      principalAmount: bigint;
                                                      accruedInterest: bigint;
                                                      startTime: bigint;
                                                      aprBps: bigint;
                                                  };
                                                  refinancingPrincipal: bigint;
                                              }[];
                                          }[]
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              results: {
                                                  renegotiationId: bigint;
                                                  oldLoanId: bigint;
                                                  newLoanId: bigint;
                                                  loan: {
                                                      borrower: `0x${string}`;
                                                      nftCollateralTokenId: bigint;
                                                      nftCollateralAddress: `0x${string}`;
                                                      principalAddress: `0x${string}`;
                                                      principalAmount: bigint;
                                                      startTime: bigint;
                                                      duration: bigint;
                                                      source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                  };
                                                  fee: bigint;
                                              }[];
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            offer: {
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                            };
                                            signature: `0x${string}`;
                                            loan: LoanV5;
                                        }
                                        +
                                          +
                                        • +
                                          offer: {
                                              renegotiationId: bigint;
                                              loanId: bigint;
                                              lender: `0x${string}`;
                                              fee: bigint;
                                              targetPrincipal: readonly bigint[];
                                              principalAmount: bigint;
                                              aprBps: bigint;
                                              expirationTime: bigint;
                                              duration: bigint;
                                          }
                                          +
                                            +
                                          • +
                                            renegotiationId: bigint
                                          • +
                                          • +
                                            loanId: bigint
                                          • +
                                          • +
                                            lender: `0x${string}`
                                          • +
                                          • +
                                            fee: bigint
                                          • +
                                          • +
                                            targetPrincipal: readonly bigint[]
                                          • +
                                          • +
                                            principalAmount: bigint
                                          • +
                                          • +
                                            aprBps: bigint
                                          • +
                                          • +
                                            expirationTime: bigint
                                          • +
                                          • +
                                            duration: bigint
                                        • +
                                        • +
                                          signature: `0x${string}`
                                        • +
                                        • +
                                          loan: LoanV5
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              loan: {
                                                  contractAddress: `0x${string}`;
                                                  borrower: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  startTime: bigint;
                                                  duration: bigint;
                                                  source: readonly {
                                                      loanId: bigint;
                                                      lender: `0x${string}`;
                                                      principalAmount: bigint;
                                                      accruedInterest: bigint;
                                                      startTime: bigint;
                                                      aprBps: bigint;
                                                  }[];
                                                  id: string;
                                              };
                                              loanId: bigint;
                                              renegotiationId: string;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            offer: {
                                                renegotiationId: bigint;
                                                loanId: bigint;
                                                lender: `0x${string}`;
                                                fee: bigint;
                                                targetPrincipal: readonly bigint[];
                                                principalAmount: bigint;
                                                aprBps: bigint;
                                                expirationTime: bigint;
                                                duration: bigint;
                                            };
                                            loan: LoanV5;
                                        }
                                        +
                                          +
                                        • +
                                          offer: {
                                              renegotiationId: bigint;
                                              loanId: bigint;
                                              lender: `0x${string}`;
                                              fee: bigint;
                                              targetPrincipal: readonly bigint[];
                                              principalAmount: bigint;
                                              aprBps: bigint;
                                              expirationTime: bigint;
                                              duration: bigint;
                                          }
                                          +
                                            +
                                          • +
                                            renegotiationId: bigint
                                          • +
                                          • +
                                            loanId: bigint
                                          • +
                                          • +
                                            lender: `0x${string}`
                                          • +
                                          • +
                                            fee: bigint
                                          • +
                                          • +
                                            targetPrincipal: readonly bigint[]
                                          • +
                                          • +
                                            principalAmount: bigint
                                          • +
                                          • +
                                            aprBps: bigint
                                          • +
                                          • +
                                            expirationTime: bigint
                                          • +
                                          • +
                                            duration: bigint
                                        • +
                                        • +
                                          loan: LoanV5
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              loan: {
                                                  contractAddress: `0x${string}`;
                                                  borrower: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  startTime: bigint;
                                                  duration: bigint;
                                                  source: readonly {
                                                      loanId: bigint;
                                                      lender: `0x${string}`;
                                                      principalAmount: bigint;
                                                      accruedInterest: bigint;
                                                      startTime: bigint;
                                                      aprBps: bigint;
                                                  }[];
                                                  id: string;
                                              };
                                              loanId: bigint;
                                              renegotiationId: string;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              loan: {
                                                  contractAddress: `0x${string}`;
                                                  borrower: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  startTime: bigint;
                                                  duration: bigint;
                                                  tranche: readonly {
                                                      loanId: bigint;
                                                      floor: bigint;
                                                      principalAmount: bigint;
                                                      lender: `0x${string}`;
                                                      accruedInterest: bigint;
                                                      startTime: bigint;
                                                      aprBps: bigint;
                                                  }[];
                                                  protocolFee: bigint;
                                                  id: string;
                                              };
                                              loanId: bigint;
                                              renegotiationId: string;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              loan: {
                                                  contractAddress: `0x${string}`;
                                                  borrower: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  startTime: bigint;
                                                  duration: bigint;
                                                  tranche: readonly {
                                                      loanId: bigint;
                                                      floor: bigint;
                                                      principalAmount: bigint;
                                                      lender: `0x${string}`;
                                                      accruedInterest: bigint;
                                                      startTime: bigint;
                                                      aprBps: bigint;
                                                  }[];
                                                  protocolFee: bigint;
                                                  id: string;
                                              };
                                              loanId: bigint;
                                              offerIds: string[];
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        delegations: {
                                            loan: LoanV5;
                                            loanId: bigint;
                                            to: `0x${string}`;
                                            rights?: `0x${string}`;
                                            enable: boolean;
                                        }[]
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              results: {
                                                  loanId: bigint;
                                                  delegate: `0x${string}`;
                                                  value: boolean;
                                              }[];
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            loan: LoanV5;
                                            loanId: bigint;
                                            to: `0x${string}`;
                                            rights?: `0x${string}`;
                                            enable: boolean;
                                        }
                                        +
                                          +
                                        • +
                                          loan: LoanV5
                                        • +
                                        • +
                                          loanId: bigint
                                        • +
                                        • +
                                          to: `0x${string}`
                                        • +
                                        • +
                                          Optional rights?: `0x${string}`
                                        • +
                                        • +
                                          enable: boolean
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              loan: {
                                                  loanId: bigint;
                                                  contractAddress: `0x${string}`;
                                                  borrower: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  startTime: bigint | bigint & Date;
                                                  duration: bigint;
                                                  source: readonly {
                                                      loanId: bigint;
                                                      lender: `0x${string}`;
                                                      principalAmount: bigint;
                                                      accruedInterest: bigint;
                                                      startTime: bigint;
                                                      aprBps: bigint;
                                                  }[];
                                              };
                                              value: boolean;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            to: `0x${string}`;
                                            collection: `0x${string}`;
                                            tokenId: bigint;
                                        }
                                        +
                                          +
                                        • +
                                          to: `0x${string}`
                                        • +
                                        • +
                                          collection: `0x${string}`
                                        • +
                                        • +
                                          tokenId: bigint
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              delegate: `0x${string}`;
                                              collection: `0x${string}`;
                                              tokenId: bigint;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        __namedParameters: {
                                            loan: LoanV5;
                                            loanId: bigint;
                                        }
                                        +
                                          +
                                        • +
                                          loan: LoanV5
                                        • +
                                        • +
                                          loanId: bigint
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<{
                                              loanId: bigint;
                                          }>);
                                      }>

                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        calldata: `0x${string}`
                                      +

                                      Returns {
                                          data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: boolean; };
                                          loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; source: readonly { loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; };
                                          borrowerSignature: `0x${string}`;
                                      }

                                      +
                                        +
                                      • +
                                        data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: boolean; }
                                      • +
                                      • +
                                        loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; source: readonly { loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; }
                                      • +
                                      • +
                                        borrowerSignature: `0x${string}`
                                    +
                                    + +
                                      + +
                                    • +
                                      +

                                      Parameters

                                      +
                                        +
                                      • +
                                        data: `0x${string}`
                                      +

                                      Returns Promise<{
                                          txHash: `0x${string}`;
                                          waitTxInBlock: (() => Promise<TransactionReceipt>);
                                      }>

                                    +
                                    +

                                    Properties

                                    +
                                    + +
                                    abi: readonly [{
                                        stateMutability: "nonpayable";
                                        type: "constructor";
                                        inputs: readonly [{
                                            name: "loanLiquidator";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "protocolFee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            name: "currencyManager";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "collectionManager";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "maxSources";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "minLockPeriod";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "delegateRegistry";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "flashActionContract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "AddressZeroError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "CancelledOrExecutedOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "CancelledRenegotiationOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "CannotLiquidateError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "CollectionNotWhitelistedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "CurrencyNotWhitelistedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ECDSAInvalidSignature";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "length";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "ECDSAInvalidSignatureLength";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "s";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                        name: "ECDSAInvalidSignatureS";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "ExpiredOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "ExpiredRenegotiationOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ExtensionNotAvailableError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_amount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_principalAmount";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "InvalidAmountError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidBorrowerError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidCallbackError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidCollateralIdError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidDurationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidLenderError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidLiquidationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "InvalidLoanError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidMethodError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_fraction";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "InvalidProtocolFeeError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidRenegotiationOfferError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidSignatureError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "InvalidValueError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "LengthMismatchError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_liquidator";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "LiquidatorOnlyError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "LoanExpiredError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_expirationTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LoanNotDueError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_newMinOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LowOfferIdError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_newMinRenegotiationOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "LowRenegotiationOfferIdError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "MaxCapacityExceededError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "minLockPeriod";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "MinLockPeriodTooHighError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "i";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "returndata";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "MulticallFailed";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "NFTNotReturnedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "NotStrictlyImprovedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "OnlyBorrowerCallableError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "OnlyLenderCallableError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "OnlyLenderOrBorrowerCallableError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "PartialOfferCannotChangeDurationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "PartialOfferCannotHaveFeeError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "RefinanceFullError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "minTimestamp";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "SourceCannotBeRefinancedError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "sourcePrincipal";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "loanPrincipal";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "TargetPrincipalTooLowError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "_pendingProtocolFeeSetTime";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "TooEarlyError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [{
                                            name: "sources";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "TooManySourcesError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ZeroDurationError";
                                    }, {
                                        type: "error";
                                        inputs: readonly [];
                                        name: "ZeroInterestError";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "AllOffersCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "minRenegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "AllRenegotiationOffersCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "BorrowerOfferCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "newdelegateRegistry";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "DelegateRegistryUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "delegate";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "value";
                                            internalType: "bool";
                                            type: "bool";
                                            indexed: false;
                                        }];
                                        name: "Delegated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "newFlashActionContract";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "FlashActionContractUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "target";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "data";
                                            internalType: "bytes";
                                            type: "bytes";
                                            indexed: false;
                                        }];
                                        name: "FlashActionExecuted";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "minimum";
                                            internalType: "struct IBaseLoan.ImprovementMinimum";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "interest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "ImprovementMinimumUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "newDuration";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LiquidationAuctionDurationUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "liquidator";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "LiquidationContractUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            indexed: false;
                                        }, {
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "borrower";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanEmitted";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "oldLoanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "newLoanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            indexed: false;
                                        }, {
                                            name: "_extension";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanExtended";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanForeclosed";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanLiquidated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "oldLoanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "newLoanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            indexed: false;
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanRefinanced";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "totalRepayment";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "fee";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "LoanRepaid";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }, {
                                            name: "liquidator";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "LoanSentToLiquidator";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "newMax";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "MaxSourcesUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "minLockPeriod";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "MinLockPeriodUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "OfferCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "user";
                                            internalType: "address";
                                            type: "address";
                                            indexed: true;
                                        }, {
                                            name: "newOwner";
                                            internalType: "address";
                                            type: "address";
                                            indexed: true;
                                        }];
                                        name: "OwnershipTransferred";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "fee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "ProtocolFeePendingUpdate";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "fee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "ProtocolFeeUpdated";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "lender";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "RenegotiationOfferCancelled";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "delegate";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "collection";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "tokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                            indexed: false;
                                        }];
                                        name: "RevokeDelegate";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "contractAdded";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }, {
                                            name: "tax";
                                            internalType: "struct WithCallbacks.Taxes";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "buyTax";
                                                internalType: "uint128";
                                                type: "uint128";
                                            }, {
                                                name: "sellTax";
                                                internalType: "uint128";
                                                type: "uint128";
                                            }];
                                            indexed: false;
                                        }];
                                        name: "WhitelistedCallbackContractAdded";
                                    }, {
                                        type: "event";
                                        anonymous: false;
                                        inputs: readonly [{
                                            name: "contractRemoved";
                                            internalType: "address";
                                            type: "address";
                                            indexed: false;
                                        }];
                                        name: "WhitelistedCallbackContractRemoved";
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "DOMAIN_SEPARATOR";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "FEE_UPDATE_NOTICE";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "INITIAL_DOMAIN_SEPARATOR";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "MAX_PROTOCOL_FEE";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "MIN_AUCTION_DURATION";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint48";
                                            type: "uint48";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_contract";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_tax";
                                            internalType: "struct WithCallbacks.Taxes";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "buyTax";
                                                internalType: "uint128";
                                                type: "uint128";
                                            }, {
                                                name: "sellTax";
                                                internalType: "uint128";
                                                type: "uint128";
                                            }];
                                        }];
                                        name: "addWhitelistedCallbackContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_minOfferId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelAllOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_minRenegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelAllRenegotiationOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelOffer";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_offerIds";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }];
                                        name: "cancelOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "cancelRenegotiationOffer";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationIds";
                                            internalType: "uint256[]";
                                            type: "uint256[]";
                                        }];
                                        name: "cancelRenegotiationOffers";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            name: "_delegate";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_rights";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }, {
                                            name: "_value";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                        name: "delegate";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_executionData";
                                            internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "executionData";
                                                internalType: "struct IBaseLoan.ExecutionData";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "offer";
                                                    internalType: "struct IBaseLoan.LoanOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "capacity";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "validators";
                                                        internalType: "struct IBaseLoan.OfferValidator[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "validator";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "arguments";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "amount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "callbackData";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "lenderOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }, {
                                                name: "borrowerOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                        }];
                                        name: "emitLoan";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            name: "_target";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_data";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "executeFlashAction";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            name: "_extension";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "extendLoan";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getCollectionManager";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getCurrencyManager";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getDelegateRegistry";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getFlashActionContract";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getImprovementMinimum";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "struct IBaseLoan.ImprovementMinimum";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "interest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getLiquidationAuctionDuration";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint48";
                                            type: "uint48";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getLiquidator";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "getLoanHash";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes32";
                                            type: "bytes32";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getMaxSources";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getMinLockPeriod";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanPrincipal";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "getMinSourcePrincipal";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getPendingProtocolFee";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getPendingProtocolFeeSetTime";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getProtocolFee";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "getTotalLoansIssued";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_lender";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_offerId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "getUsedCapacity";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "isBorrowerOfferCancelled";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "isOfferCancelled";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "isRenegotiationOfferCancelled";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_contract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "isWhitelistedCallbackContract";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bool";
                                            type: "bool";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "lenderMinRenegotiationOfferId";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                        name: "liquidateLoan";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_loanId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                        name: "loanLiquidated";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "minOfferId";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                    }, {
                                        stateMutability: "payable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "data";
                                            internalType: "bytes[]";
                                            type: "bytes[]";
                                        }];
                                        name: "multicall";
                                        outputs: readonly [{
                                            name: "results";
                                            internalType: "bytes[]";
                                            type: "bytes[]";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "name";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "string";
                                            type: "string";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "onERC721Received";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "bytes4";
                                            type: "bytes4";
                                        }];
                                    }, {
                                        stateMutability: "view";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "owner";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationOffer";
                                            internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "targetPrincipal";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            name: "_renegotiationOfferSignature";
                                            internalType: "bytes";
                                            type: "bytes";
                                        }];
                                        name: "refinanceFull";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_renegotiationOffer";
                                            internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "targetPrincipal";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "aprBps";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            name: "_loan";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                        name: "refinancePartial";
                                        outputs: readonly [{
                                            name: "";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }, {
                                            name: "";
                                            internalType: "struct IMultiSourceLoan.Loan";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "nftCollateralTokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "nftCollateralAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAddress";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "startTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "source";
                                                internalType: "struct IMultiSourceLoan.Source[]";
                                                type: "tuple[]";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "accruedInterest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_contract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "removeWhitelistedCallbackContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_repaymentData";
                                            internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "data";
                                                internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "callbackData";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }, {
                                                    name: "shouldDelegate";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "borrowerSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                        }];
                                        name: "repayLoan";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_delegate";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_collection";
                                            internalType: "address";
                                            type: "address";
                                        }, {
                                            name: "_tokenId";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "revokeDelegate";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newDelegateRegistry";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "setDelegateRegistry";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newFlashActionContract";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "setFlashActionContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "__maxSources";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "setMaxSources";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "__minLockPeriod";
                                            internalType: "uint256";
                                            type: "uint256";
                                        }];
                                        name: "setMinLockPeriod";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [];
                                        name: "setProtocolFee";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "newOwner";
                                            internalType: "address";
                                            type: "address";
                                        }];
                                        name: "transferOwnership";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newMinimum";
                                            internalType: "struct IBaseLoan.ImprovementMinimum";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "interest";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "duration";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                        name: "updateImprovementMinimum";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newDuration";
                                            internalType: "uint48";
                                            type: "uint48";
                                        }];
                                        name: "updateLiquidationAuctionDuration";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "loanLiquidator";
                                            internalType: "contract ILoanLiquidator";
                                            type: "address";
                                        }];
                                        name: "updateLiquidationContract";
                                        outputs: readonly [];
                                    }, {
                                        stateMutability: "nonpayable";
                                        type: "function";
                                        inputs: readonly [{
                                            name: "_newProtocolFee";
                                            internalType: "struct IBaseLoan.ProtocolFee";
                                            type: "tuple";
                                            components: readonly [{
                                                name: "recipient";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }];
                                        name: "updateProtocolFee";
                                        outputs: readonly [];
                                    }]
                                    +
                                    + +
                                    address: `0x${string}`
                                    +
                                    + +
                                    bcClient: {}
                                    +
                                    +

                                    Type declaration

                                    +
                                      +
                                      + +
                                      wallet: {}
                                      +
                                      +

                                      Type declaration

                                      +
                                        +
                                        + +
                                        contract: GetContractReturnType<readonly [{
                                            stateMutability: "nonpayable";
                                            type: "constructor";
                                            inputs: readonly [{
                                                name: "loanLiquidator";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "protocolFee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "currencyManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "collectionManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "maxSources";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "delegateRegistry";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "flashActionContract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "AddressZeroError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledOrExecutedOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CannotLiquidateError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CollectionNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CurrencyNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ECDSAInvalidSignature";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "length";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ECDSAInvalidSignatureLength";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "s";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                            name: "ECDSAInvalidSignatureS";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ExpiredOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ExpiredRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ExtensionNotAvailableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_amount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidAmountError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidBorrowerError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCallbackError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCollateralIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidLenderError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidLiquidationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidLoanError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidMethodError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidProtocolFeeError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidSignatureError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidValueError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LengthMismatchError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_liquidator";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "LiquidatorOnlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LoanExpiredError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LoanNotDueError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinRenegotiationOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowRenegotiationOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "MaxCapacityExceededError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "MinLockPeriodTooHighError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "i";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "returndata";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "MulticallFailed";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "NFTNotReturnedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "NotStrictlyImprovedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyBorrowerCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyLenderCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyLenderOrBorrowerCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "PartialOfferCannotChangeDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "PartialOfferCannotHaveFeeError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "RefinanceFullError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "minTimestamp";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "SourceCannotBeRefinancedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "sourcePrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanPrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TargetPrincipalTooLowError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_pendingProtocolFeeSetTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TooEarlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "sources";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TooManySourcesError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroInterestError";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "AllOffersCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "minRenegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "AllRenegotiationOffersCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "BorrowerOfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newdelegateRegistry";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "DelegateRegistryUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "delegate";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "value";
                                                internalType: "bool";
                                                type: "bool";
                                                indexed: false;
                                            }];
                                            name: "Delegated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newFlashActionContract";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "FlashActionContractUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "target";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "data";
                                                internalType: "bytes";
                                                type: "bytes";
                                                indexed: false;
                                            }];
                                            name: "FlashActionExecuted";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "minimum";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ImprovementMinimumUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newDuration";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LiquidationAuctionDurationUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LiquidationContractUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanEmitted";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "oldLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "newLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "_extension";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanExtended";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanForeclosed";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanLiquidated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "oldLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "newLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRefinanced";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "totalRepayment";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRepaid";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LoanSentToLiquidator";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newMax";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "MaxSourcesUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "MinLockPeriodUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "OfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "user";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }, {
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }];
                                            name: "OwnershipTransferred";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeePendingUpdate";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeeUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "RenegotiationOfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "delegate";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "collection";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "tokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "RevokeDelegate";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contractAdded";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "tax";
                                                internalType: "struct WithCallbacks.Taxes";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "buyTax";
                                                    internalType: "uint128";
                                                    type: "uint128";
                                                }, {
                                                    name: "sellTax";
                                                    internalType: "uint128";
                                                    type: "uint128";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractAdded";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contractRemoved";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractRemoved";
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "FEE_UPDATE_NOTICE";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "INITIAL_DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MAX_PROTOCOL_FEE";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MIN_AUCTION_DURATION";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_tax";
                                                internalType: "struct WithCallbacks.Taxes";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "buyTax";
                                                    internalType: "uint128";
                                                    type: "uint128";
                                                }, {
                                                    name: "sellTax";
                                                    internalType: "uint128";
                                                    type: "uint128";
                                                }];
                                            }];
                                            name: "addWhitelistedCallbackContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelAllOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_minRenegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelAllRenegotiationOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelOffer";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_offerIds";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }];
                                            name: "cancelOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelRenegotiationOffer";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationIds";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }];
                                            name: "cancelRenegotiationOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_delegate";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_rights";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }, {
                                                name: "_value";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            name: "delegate";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_executionData";
                                                internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "executionData";
                                                    internalType: "struct IBaseLoan.ExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "offer";
                                                        internalType: "struct IBaseLoan.LoanOffer";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "offerId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "capacity";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "validators";
                                                            internalType: "struct IBaseLoan.OfferValidator[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "validator";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "arguments";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }];
                                                    }, {
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "amount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "callbackData";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "lenderOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }, {
                                                    name: "borrowerOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }];
                                            name: "emitLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_target";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_data";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "executeFlashAction";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_extension";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "extendLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCollectionManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCurrencyManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getDelegateRegistry";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getFlashActionContract";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getImprovementMinimum";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidationAuctionDuration";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidator";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getLoanHash";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getMaxSources";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getMinLockPeriod";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanPrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getMinSourcePrincipal";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFeeSetTime";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getTotalLoansIssued";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getUsedCapacity";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isBorrowerOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isRenegotiationOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "isWhitelistedCallbackContract";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "lenderMinRenegotiationOfferId";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "liquidateLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "loanLiquidated";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "minOfferId";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "payable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "data";
                                                internalType: "bytes[]";
                                                type: "bytes[]";
                                            }];
                                            name: "multicall";
                                            outputs: readonly [{
                                                name: "results";
                                                internalType: "bytes[]";
                                                type: "bytes[]";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "name";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "string";
                                                type: "string";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "onERC721Received";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes4";
                                                type: "bytes4";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "owner";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_renegotiationOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "refinanceFull";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "refinancePartial";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "removeWhitelistedCallbackContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_repaymentData";
                                                internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "data";
                                                    internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "callbackData";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }, {
                                                        name: "shouldDelegate";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "borrowerSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }];
                                            name: "repayLoan";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_delegate";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_collection";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_tokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "revokeDelegate";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newDelegateRegistry";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "setDelegateRegistry";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newFlashActionContract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "setFlashActionContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "__maxSources";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "setMaxSources";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "__minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "setMinLockPeriod";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "setProtocolFee";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "transferOwnership";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newMinimum";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "updateImprovementMinimum";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newDuration";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                            name: "updateLiquidationAuctionDuration";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "loanLiquidator";
                                                internalType: "contract ILoanLiquidator";
                                                type: "address";
                                            }];
                                            name: "updateLiquidationContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newProtocolFee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "updateProtocolFee";
                                            outputs: readonly [];
                                        }], {} | {}>
                                        +
                                        + +
                                        safeContractWrite: {
                                            transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                            liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                                            onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                            addWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                            cancelAllOffers: ((args, options?) => Promise<`0x${string}`>);
                                            cancelAllRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>);
                                            cancelOffer: ((args, options?) => Promise<`0x${string}`>);
                                            cancelOffers: ((args, options?) => Promise<`0x${string}`>);
                                            cancelRenegotiationOffer: ((args, options?) => Promise<`0x${string}`>);
                                            cancelRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>);
                                            loanLiquidated: ((args, options?) => Promise<`0x${string}`>);
                                            removeWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                            setProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                            updateImprovementMinimum: ((args, options?) => Promise<`0x${string}`>);
                                            updateLiquidationAuctionDuration: ((args, options?) => Promise<`0x${string}`>);
                                            updateLiquidationContract: ((args, options?) => Promise<`0x${string}`>);
                                            updateProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                            emitLoan: ((args, options?) => Promise<`0x${string}`>);
                                            refinanceFull: ((args, options?) => Promise<`0x${string}`>);
                                            refinancePartial: ((args, options?) => Promise<`0x${string}`>);
                                            repayLoan: ((args, options?) => Promise<`0x${string}`>);
                                            setMaxSources: ((args, options?) => Promise<`0x${string}`>);
                                            multicall: ((args, options?) => Promise<`0x${string}`>);
                                            delegate: ((args, options?) => Promise<`0x${string}`>);
                                            revokeDelegate: ((args, options?) => Promise<`0x${string}`>);
                                            executeFlashAction: ((args, options?) => Promise<`0x${string}`>);
                                            extendLoan: ((args, options?) => Promise<`0x${string}`>);
                                            setDelegateRegistry: ((args, options?) => Promise<`0x${string}`>);
                                            setFlashActionContract: ((args, options?) => Promise<`0x${string}`>);
                                            setMinLockPeriod: ((args, options?) => Promise<`0x${string}`>);
                                        }
                                        +
                                        +

                                        Type declaration

                                        +
                                          +
                                        • +
                                          transferOwnership: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [`0x${string}`]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          liquidateLoan: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }] | readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }] & readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          onERC721Received: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          addWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [`0x${string}`, {
                                                    buyTax: bigint;
                                                    sellTax: bigint;
                                                }] | readonly [`0x${string}`, {
                                                    buyTax: bigint;
                                                    sellTax: bigint;
                                                }] & readonly [`0x${string}`, {
                                                    buyTax: bigint;
                                                    sellTax: bigint;
                                                }]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          cancelAllOffers: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          cancelAllRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          cancelOffer: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          cancelOffers: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [readonly bigint[]] | readonly [readonly bigint[]] & readonly [readonly bigint[]]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          cancelRenegotiationOffer: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          cancelRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [readonly bigint[]] | readonly [readonly bigint[]] & readonly [readonly bigint[]]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          loanLiquidated: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }] | readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }] & readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          removeWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [`0x${string}`]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          setProtocolFee: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: undefined | readonly []
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          updateImprovementMinimum: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [{
                                                    principalAmount: bigint;
                                                    interest: bigint;
                                                    duration: bigint;
                                                }] | readonly [{
                                                    principalAmount: bigint;
                                                    interest: bigint;
                                                    duration: bigint;
                                                }] & readonly [{
                                                    principalAmount: bigint;
                                                    interest: bigint;
                                                    duration: bigint;
                                                }]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          updateLiquidationAuctionDuration: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [number]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          updateLiquidationContract: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [`0x${string}`]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          updateProtocolFee: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [{
                                                    recipient: `0x${string}`;
                                                    fraction: bigint;
                                                }] | readonly [{
                                                    recipient: `0x${string}`;
                                                    fraction: bigint;
                                                }] & readonly [{
                                                    recipient: `0x${string}`;
                                                    fraction: bigint;
                                                }]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          emitLoan: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [{
                                                    executionData: { offer: { offerId: bigint; lender: `0x${string}`; fee: bigint; borrower: `0x${string}`; capacity: bigint; nftCollateralAddress: `0x${string}`; nftCollateralTokenId: bigint; principalAddress: `0x${string}`; principalAmount: bigint; aprBps: bigint; expirationTime: bigint; duration: bigint; validators: readonly { validator: `0x${string}`; arguments: `0x${string}`; }[]; }; tokenId: bigint; amount: bigint; expirationTime: bigint; callbackData: `0x${string}`; };
                                                    lender: `0x${string}`;
                                                    borrower: `0x${string}`;
                                                    lenderOfferSignature: `0x${string}`;
                                                    borrowerOfferSignature: `0x${string}`;
                                                }] | readonly [{
                                                    executionData: { offer: { offerId: bigint; lender: `0x${string}`; fee: bigint; borrower: `0x${string}`; capacity: bigint; nftCollateralAddress: `0x${string}`; nftCollateralTokenId: bigint; principalAddress: `0x${string}`; principalAmount: bigint; aprBps: bigint; expirationTime: bigint; duration: bigint; validators: readonly { validator: `0x${string}`; arguments: `0x${string}`; }[]; }; tokenId: bigint; amount: bigint; expirationTime: bigint; callbackData: `0x${string}`; };
                                                    lender: `0x${string}`;
                                                    borrower: `0x${string}`;
                                                    lenderOfferSignature: `0x${string}`;
                                                    borrowerOfferSignature: `0x${string}`;
                                                }] & readonly [{
                                                    executionData: { offer: { offerId: bigint; lender: `0x${string}`; fee: bigint; borrower: `0x${string}`; capacity: bigint; nftCollateralAddress: `0x${string}`; nftCollateralTokenId: bigint; principalAddress: `0x${string}`; principalAmount: bigint; aprBps: bigint; expirationTime: bigint; duration: bigint; validators: readonly { validator: `0x${string}`; arguments: `0x${string}`; }[]; }; tokenId: bigint; amount: bigint; expirationTime: bigint; callbackData: `0x${string}`; };
                                                    lender: `0x${string}`;
                                                    borrower: `0x${string}`;
                                                    lenderOfferSignature: `0x${string}`;
                                                    borrowerOfferSignature: `0x${string}`;
                                                }]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          refinanceFull: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [{
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    targetPrincipal: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                }, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, `0x${string}`] | readonly [{
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    targetPrincipal: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                }, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, `0x${string}`] & readonly [{
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    targetPrincipal: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                }, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, `0x${string}`]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          refinancePartial: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [{
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    targetPrincipal: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                }, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }] | readonly [{
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    targetPrincipal: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                }, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }] & readonly [{
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    targetPrincipal: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                }, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          repayLoan: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [{
                                                    data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: Widen<boolean>; };
                                                    loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; source: readonly { loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; };
                                                    borrowerSignature: `0x${string}`;
                                                }] | readonly [{
                                                    data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: boolean; };
                                                    loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; source: readonly { loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; };
                                                    borrowerSignature: `0x${string}`;
                                                }] & readonly [{
                                                    data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: Widen<boolean>; };
                                                    loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; source: readonly { loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; };
                                                    borrowerSignature: `0x${string}`;
                                                }]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          setMaxSources: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          multicall: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [readonly `0x${string}`[]] | readonly [readonly `0x${string}`[]] & readonly [readonly `0x${string}`[]]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          delegate: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, `0x${string}`, `0x${string}`, Widen<boolean>] | readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, `0x${string}`, `0x${string}`, boolean] & readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, `0x${string}`, `0x${string}`, Widen<boolean>]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          revokeDelegate: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [`0x${string}`, `0x${string}`, bigint]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          executeFlashAction: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, `0x${string}`, `0x${string}`] | readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, `0x${string}`, `0x${string}`] & readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, `0x${string}`, `0x${string}`]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          extendLoan: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, bigint] | readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, bigint] & readonly [bigint, {
                                                    borrower: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    startTime: bigint;
                                                    duration: bigint;
                                                    source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                }, bigint]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          setDelegateRegistry: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [`0x${string}`]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          setFlashActionContract: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [`0x${string}`]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        • +
                                        • +
                                          setMinLockPeriod: ((args, options?) => Promise<`0x${string}`>)
                                          +
                                            +
                                          • +
                                              +
                                            • (args, options?): Promise<`0x${string}`>
                                            • +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                args: readonly [bigint]
                                              • +
                                              • +
                                                Optional options: {
                                                    value?: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  Optional value?: bigint
                                              +

                                              Returns Promise<`0x${string}`>

                                        +
                                        + +
                                        parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                            stateMutability: "nonpayable";
                                            type: "constructor";
                                            inputs: readonly [{
                                                name: "loanLiquidator";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "protocolFee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "currencyManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "collectionManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "maxSources";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "delegateRegistry";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "flashActionContract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "AddressZeroError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledOrExecutedOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CannotLiquidateError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CollectionNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CurrencyNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ECDSAInvalidSignature";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "length";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ECDSAInvalidSignatureLength";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "s";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                            name: "ECDSAInvalidSignatureS";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ExpiredOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ExpiredRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ExtensionNotAvailableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_amount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidAmountError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidBorrowerError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCallbackError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCollateralIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidLenderError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidLiquidationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidLoanError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidMethodError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_fraction";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidProtocolFeeError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidSignatureError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidValueError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LengthMismatchError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_liquidator";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "LiquidatorOnlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LoanExpiredError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LoanNotDueError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinRenegotiationOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowRenegotiationOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "MaxCapacityExceededError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "MinLockPeriodTooHighError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "i";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "returndata";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "MulticallFailed";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "NFTNotReturnedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "NotStrictlyImprovedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyBorrowerCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyLenderCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "OnlyLenderOrBorrowerCallableError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "PartialOfferCannotChangeDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "PartialOfferCannotHaveFeeError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "RefinanceFullError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "minTimestamp";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "SourceCannotBeRefinancedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "sourcePrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loanPrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TargetPrincipalTooLowError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_pendingProtocolFeeSetTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TooEarlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "sources";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TooManySourcesError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroInterestError";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "AllOffersCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "minRenegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "AllRenegotiationOffersCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "BorrowerOfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newdelegateRegistry";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "DelegateRegistryUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "delegate";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "value";
                                                internalType: "bool";
                                                type: "bool";
                                                indexed: false;
                                            }];
                                            name: "Delegated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newFlashActionContract";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "FlashActionContractUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "target";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "data";
                                                internalType: "bytes";
                                                type: "bytes";
                                                indexed: false;
                                            }];
                                            name: "FlashActionExecuted";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "minimum";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ImprovementMinimumUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newDuration";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LiquidationAuctionDurationUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LiquidationContractUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "borrower";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanEmitted";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "oldLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "newLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "_extension";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanExtended";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanForeclosed";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanLiquidated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "oldLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "newLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRefinanced";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "totalRepayment";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRepaid";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LoanSentToLiquidator";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newMax";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "MaxSourcesUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "MinLockPeriodUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "OfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "user";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }, {
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }];
                                            name: "OwnershipTransferred";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeePendingUpdate";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeeUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "RenegotiationOfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "delegate";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "collection";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "tokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "RevokeDelegate";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contractAdded";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "tax";
                                                internalType: "struct WithCallbacks.Taxes";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "buyTax";
                                                    internalType: "uint128";
                                                    type: "uint128";
                                                }, {
                                                    name: "sellTax";
                                                    internalType: "uint128";
                                                    type: "uint128";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractAdded";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contractRemoved";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractRemoved";
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "FEE_UPDATE_NOTICE";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "INITIAL_DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MAX_PROTOCOL_FEE";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MIN_AUCTION_DURATION";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_tax";
                                                internalType: "struct WithCallbacks.Taxes";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "buyTax";
                                                    internalType: "uint128";
                                                    type: "uint128";
                                                }, {
                                                    name: "sellTax";
                                                    internalType: "uint128";
                                                    type: "uint128";
                                                }];
                                            }];
                                            name: "addWhitelistedCallbackContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelAllOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_minRenegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelAllRenegotiationOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelOffer";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_offerIds";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }];
                                            name: "cancelOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelRenegotiationOffer";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationIds";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                            }];
                                            name: "cancelRenegotiationOffers";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_delegate";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_rights";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }, {
                                                name: "_value";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            name: "delegate";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_executionData";
                                                internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "executionData";
                                                    internalType: "struct IBaseLoan.ExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "offer";
                                                        internalType: "struct IBaseLoan.LoanOffer";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "offerId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "capacity";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "validators";
                                                            internalType: "struct IBaseLoan.OfferValidator[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "validator";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "arguments";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }];
                                                    }, {
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "amount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "callbackData";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "lenderOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }, {
                                                    name: "borrowerOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }];
                                            name: "emitLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_target";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_data";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "executeFlashAction";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_extension";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "extendLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCollectionManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCurrencyManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getDelegateRegistry";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getFlashActionContract";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getImprovementMinimum";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidationAuctionDuration";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidator";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getLoanHash";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getMaxSources";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getMinLockPeriod";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanPrincipal";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getMinSourcePrincipal";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFeeSetTime";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getTotalLoansIssued";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getUsedCapacity";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isBorrowerOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isRenegotiationOfferCancelled";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "isWhitelistedCallbackContract";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "lenderMinRenegotiationOfferId";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "liquidateLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "loanLiquidated";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "minOfferId";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                        }, {
                                            stateMutability: "payable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "data";
                                                internalType: "bytes[]";
                                                type: "bytes[]";
                                            }];
                                            name: "multicall";
                                            outputs: readonly [{
                                                name: "results";
                                                internalType: "bytes[]";
                                                type: "bytes[]";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "name";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "string";
                                                type: "string";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "onERC721Received";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes4";
                                                type: "bytes4";
                                            }];
                                        }, {
                                            stateMutability: "view";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "owner";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                name: "_renegotiationOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "refinanceFull";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "targetPrincipal";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                            name: "refinancePartial";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "source";
                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "removeWhitelistedCallbackContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_repaymentData";
                                                internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "data";
                                                    internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "callbackData";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }, {
                                                        name: "shouldDelegate";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "borrowerSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }];
                                            name: "repayLoan";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_delegate";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_collection";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_tokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "revokeDelegate";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newDelegateRegistry";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "setDelegateRegistry";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newFlashActionContract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "setFlashActionContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "__maxSources";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "setMaxSources";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "__minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "setMinLockPeriod";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [];
                                            name: "setProtocolFee";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "transferOwnership";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newMinimum";
                                                internalType: "struct IBaseLoan.ImprovementMinimum";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "interest";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "updateImprovementMinimum";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newDuration";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                            name: "updateLiquidationAuctionDuration";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "loanLiquidator";
                                                internalType: "contract ILoanLiquidator";
                                                type: "address";
                                            }];
                                            name: "updateLiquidationContract";
                                            outputs: readonly [];
                                        }, {
                                            stateMutability: "nonpayable";
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newProtocolFee";
                                                internalType: "struct IBaseLoan.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "updateProtocolFee";
                                            outputs: readonly [];
                                        }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated" | "BorrowerOfferCancelled" | "RevokeDelegate" | "DelegateRegistryUpdated" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "LoanExtended" | "MinLockPeriodUpdated")[]
                                            ? TFunctionName[number]
                                            : TFunctionName>)
                                        +
                                        +

                                        Type declaration

                                        +
                                          +
                                        • +
                                            +
                                          • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                                                stateMutability: "nonpayable";
                                                type: "constructor";
                                                inputs: readonly [{
                                                    name: "loanLiquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "currencyManager";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "collectionManager";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "maxSources";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "delegateRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "flashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "AddressZeroError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "CancelledOrExecutedOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "CancelledRenegotiationOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CannotLiquidateError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CollectionNotWhitelistedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CurrencyNotWhitelistedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ECDSAInvalidSignature";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "length";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ECDSAInvalidSignatureLength";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "s";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                name: "ECDSAInvalidSignatureS";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ExpiredOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ExpiredRenegotiationOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ExtensionNotAvailableError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_amount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidAmountError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidBorrowerError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCallbackError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCollateralIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidDurationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidLenderError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidLiquidationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidLoanError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidMethodError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidProtocolFeeError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidRenegotiationOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidSignatureError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidValueError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "LengthMismatchError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "LiquidatorOnlyError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "LoanExpiredError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LoanNotDueError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_newMinOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LowOfferIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_newMinRenegotiationOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LowRenegotiationOfferIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "MaxCapacityExceededError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "MinLockPeriodTooHighError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "i";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "returndata";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "MulticallFailed";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "NFTNotReturnedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "NotStrictlyImprovedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "OnlyBorrowerCallableError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "OnlyLenderCallableError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "OnlyLenderOrBorrowerCallableError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "PartialOfferCannotChangeDurationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "PartialOfferCannotHaveFeeError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "RefinanceFullError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "minTimestamp";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "SourceCannotBeRefinancedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "sourcePrincipal";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanPrincipal";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TargetPrincipalTooLowError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_pendingProtocolFeeSetTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TooEarlyError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "sources";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TooManySourcesError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ZeroDurationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ZeroInterestError";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "AllOffersCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "minRenegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "AllRenegotiationOffersCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "BorrowerOfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newdelegateRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "DelegateRegistryUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "value";
                                                    internalType: "bool";
                                                    type: "bool";
                                                    indexed: false;
                                                }];
                                                name: "Delegated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newFlashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "FlashActionContractUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "target";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "data";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                    indexed: false;
                                                }];
                                                name: "FlashActionExecuted";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "minimum";
                                                    internalType: "struct IBaseLoan.ImprovementMinimum";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "interest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ImprovementMinimumUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newDuration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LiquidationAuctionDurationUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "LiquidationContractUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanEmitted";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "oldLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "newLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "_extension";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanExtended";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanForeclosed";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanLiquidated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "oldLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "newLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRefinanced";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "totalRepayment";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRepaid";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "LoanSentToLiquidator";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newMax";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MaxSourcesUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MinLockPeriodUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "OfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }];
                                                name: "OwnershipTransferred";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "fee";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ProtocolFeePendingUpdate";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "fee";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ProtocolFeeUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "RenegotiationOfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "collection";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "RevokeDelegate";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "contractAdded";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "tax";
                                                    internalType: "struct WithCallbacks.Taxes";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "buyTax";
                                                        internalType: "uint128";
                                                        type: "uint128";
                                                    }, {
                                                        name: "sellTax";
                                                        internalType: "uint128";
                                                        type: "uint128";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "WhitelistedCallbackContractAdded";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "contractRemoved";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "WhitelistedCallbackContractRemoved";
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "DOMAIN_SEPARATOR";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "FEE_UPDATE_NOTICE";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "INITIAL_DOMAIN_SEPARATOR";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MAX_PROTOCOL_FEE";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MIN_AUCTION_DURATION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_tax";
                                                    internalType: "struct WithCallbacks.Taxes";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "buyTax";
                                                        internalType: "uint128";
                                                        type: "uint128";
                                                    }, {
                                                        name: "sellTax";
                                                        internalType: "uint128";
                                                        type: "uint128";
                                                    }];
                                                }];
                                                name: "addWhitelistedCallbackContract";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelAllOffers";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_minRenegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelAllRenegotiationOffers";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelOffer";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_offerIds";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }];
                                                name: "cancelOffers";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelRenegotiationOffer";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationIds";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }];
                                                name: "cancelRenegotiationOffers";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "_delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_rights";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }, {
                                                    name: "_value";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                name: "delegate";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_executionData";
                                                    internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "executionData";
                                                        internalType: "struct IBaseLoan.ExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "offer";
                                                            internalType: "struct IBaseLoan.LoanOffer";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "offerId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "fee";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "borrower";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "capacity";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "expirationTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "validators";
                                                                internalType: "struct IBaseLoan.OfferValidator[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "validator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "arguments";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                            }];
                                                        }, {
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "amount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "lenderOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }, {
                                                        name: "borrowerOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "emitLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "_target";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_data";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "executeFlashAction";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "_extension";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "extendLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getCollectionManager";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getCurrencyManager";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getDelegateRegistry";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getFlashActionContract";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getImprovementMinimum";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct IBaseLoan.ImprovementMinimum";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "interest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLiquidationAuctionDuration";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLiquidator";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getLoanHash";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMaxSources";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMinLockPeriod";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanPrincipal";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getMinSourcePrincipal";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getPendingProtocolFee";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getPendingProtocolFeeSetTime";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getProtocolFee";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getTotalLoansIssued";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getUsedCapacity";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isBorrowerOfferCancelled";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isOfferCancelled";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isRenegotiationOfferCancelled";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "isWhitelistedCallbackContract";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "lenderMinRenegotiationOfferId";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                                name: "liquidateLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                                name: "loanLiquidated";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "minOfferId";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "payable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "data";
                                                    internalType: "bytes[]";
                                                    type: "bytes[]";
                                                }];
                                                name: "multicall";
                                                outputs: readonly [{
                                                    name: "results";
                                                    internalType: "bytes[]";
                                                    type: "bytes[]";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "name";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "string";
                                                    type: "string";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "onERC721Received";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes4";
                                                    type: "bytes4";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "owner";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "targetPrincipal";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "_renegotiationOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "refinanceFull";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "targetPrincipal";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                                name: "refinancePartial";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "removeWhitelistedCallbackContract";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_repaymentData";
                                                    internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "data";
                                                        internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }, {
                                                            name: "shouldDelegate";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "source";
                                                            internalType: "struct IMultiSourceLoan.Source[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }];
                                                    }, {
                                                        name: "borrowerSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "repayLoan";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_collection";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "revokeDelegate";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newDelegateRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "setDelegateRegistry";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newFlashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "setFlashActionContract";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "__maxSources";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "setMaxSources";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "__minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "setMinLockPeriod";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "setProtocolFee";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "transferOwnership";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newMinimum";
                                                    internalType: "struct IBaseLoan.ImprovementMinimum";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "interest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "updateImprovementMinimum";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newDuration";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                name: "updateLiquidationAuctionDuration";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "loanLiquidator";
                                                    internalType: "contract ILoanLiquidator";
                                                    type: "address";
                                                }];
                                                name: "updateLiquidationContract";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newProtocolFee";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "updateProtocolFee";
                                                outputs: readonly [];
                                            }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated" | "BorrowerOfferCancelled" | "RevokeDelegate" | "DelegateRegistryUpdated" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "LoanExtended" | "MinLockPeriodUpdated")[]
                                                ? TFunctionName[number]
                                                : TFunctionName>
                                          • +
                                          • +
                                            +

                                            Type Parameters

                                            +
                                              +
                                            • +

                                              TFunctionName extends "OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated" | "BorrowerOfferCancelled" | "RevokeDelegate" | "DelegateRegistryUpdated" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "LoanExtended" | "MinLockPeriodUpdated"

                                            +
                                            +

                                            Parameters

                                            +
                                              +
                                            • +
                                              eventName: TFunctionName
                                            • +
                                            • +
                                              logs: Log<bigint, number, false>[]
                                            +

                                            Returns ParseEventLogsReturnType<readonly [{
                                                stateMutability: "nonpayable";
                                                type: "constructor";
                                                inputs: readonly [{
                                                    name: "loanLiquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "currencyManager";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "collectionManager";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "maxSources";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "delegateRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "flashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "AddressZeroError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "CancelledOrExecutedOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "CancelledRenegotiationOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CannotLiquidateError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CollectionNotWhitelistedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CurrencyNotWhitelistedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ECDSAInvalidSignature";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "length";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ECDSAInvalidSignatureLength";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "s";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                name: "ECDSAInvalidSignatureS";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ExpiredOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ExpiredRenegotiationOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ExtensionNotAvailableError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_amount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidAmountError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidBorrowerError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCallbackError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCollateralIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidDurationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidLenderError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidLiquidationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidLoanError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidMethodError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidProtocolFeeError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidRenegotiationOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidSignatureError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidValueError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "LengthMismatchError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "LiquidatorOnlyError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "LoanExpiredError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LoanNotDueError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_newMinOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LowOfferIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_newMinRenegotiationOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LowRenegotiationOfferIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "MaxCapacityExceededError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "MinLockPeriodTooHighError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "i";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "returndata";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "MulticallFailed";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "NFTNotReturnedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "NotStrictlyImprovedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "OnlyBorrowerCallableError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "OnlyLenderCallableError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "OnlyLenderOrBorrowerCallableError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "PartialOfferCannotChangeDurationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "PartialOfferCannotHaveFeeError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "RefinanceFullError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "minTimestamp";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "SourceCannotBeRefinancedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "sourcePrincipal";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanPrincipal";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TargetPrincipalTooLowError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_pendingProtocolFeeSetTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TooEarlyError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "sources";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TooManySourcesError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ZeroDurationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ZeroInterestError";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "AllOffersCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "minRenegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "AllRenegotiationOffersCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "BorrowerOfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newdelegateRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "DelegateRegistryUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "value";
                                                    internalType: "bool";
                                                    type: "bool";
                                                    indexed: false;
                                                }];
                                                name: "Delegated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newFlashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "FlashActionContractUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "target";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "data";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                    indexed: false;
                                                }];
                                                name: "FlashActionExecuted";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "minimum";
                                                    internalType: "struct IBaseLoan.ImprovementMinimum";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "interest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ImprovementMinimumUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newDuration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LiquidationAuctionDurationUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "LiquidationContractUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanEmitted";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "oldLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "newLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "_extension";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanExtended";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanForeclosed";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanLiquidated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "oldLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "newLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRefinanced";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "totalRepayment";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRepaid";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "LoanSentToLiquidator";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newMax";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MaxSourcesUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MinLockPeriodUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "OfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }];
                                                name: "OwnershipTransferred";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "fee";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ProtocolFeePendingUpdate";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "fee";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ProtocolFeeUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "RenegotiationOfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "collection";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "RevokeDelegate";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "contractAdded";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "tax";
                                                    internalType: "struct WithCallbacks.Taxes";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "buyTax";
                                                        internalType: "uint128";
                                                        type: "uint128";
                                                    }, {
                                                        name: "sellTax";
                                                        internalType: "uint128";
                                                        type: "uint128";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "WhitelistedCallbackContractAdded";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "contractRemoved";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "WhitelistedCallbackContractRemoved";
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "DOMAIN_SEPARATOR";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "FEE_UPDATE_NOTICE";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "INITIAL_DOMAIN_SEPARATOR";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MAX_PROTOCOL_FEE";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MIN_AUCTION_DURATION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_tax";
                                                    internalType: "struct WithCallbacks.Taxes";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "buyTax";
                                                        internalType: "uint128";
                                                        type: "uint128";
                                                    }, {
                                                        name: "sellTax";
                                                        internalType: "uint128";
                                                        type: "uint128";
                                                    }];
                                                }];
                                                name: "addWhitelistedCallbackContract";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelAllOffers";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_minRenegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelAllRenegotiationOffers";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelOffer";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_offerIds";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }];
                                                name: "cancelOffers";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelRenegotiationOffer";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationIds";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }];
                                                name: "cancelRenegotiationOffers";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "_delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_rights";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }, {
                                                    name: "_value";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                name: "delegate";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_executionData";
                                                    internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "executionData";
                                                        internalType: "struct IBaseLoan.ExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "offer";
                                                            internalType: "struct IBaseLoan.LoanOffer";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "offerId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "fee";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "borrower";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "capacity";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "expirationTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "validators";
                                                                internalType: "struct IBaseLoan.OfferValidator[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "validator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "arguments";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                            }];
                                                        }, {
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "amount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "lenderOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }, {
                                                        name: "borrowerOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "emitLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "_target";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_data";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "executeFlashAction";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "_extension";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "extendLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getCollectionManager";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getCurrencyManager";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getDelegateRegistry";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getFlashActionContract";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getImprovementMinimum";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct IBaseLoan.ImprovementMinimum";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "interest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLiquidationAuctionDuration";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLiquidator";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getLoanHash";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMaxSources";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMinLockPeriod";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanPrincipal";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getMinSourcePrincipal";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getPendingProtocolFee";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getPendingProtocolFeeSetTime";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getProtocolFee";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getTotalLoansIssued";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getUsedCapacity";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isBorrowerOfferCancelled";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isOfferCancelled";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isRenegotiationOfferCancelled";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "isWhitelistedCallbackContract";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "lenderMinRenegotiationOfferId";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                                name: "liquidateLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                                name: "loanLiquidated";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "minOfferId";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                stateMutability: "payable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "data";
                                                    internalType: "bytes[]";
                                                    type: "bytes[]";
                                                }];
                                                name: "multicall";
                                                outputs: readonly [{
                                                    name: "results";
                                                    internalType: "bytes[]";
                                                    type: "bytes[]";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "name";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "string";
                                                    type: "string";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "onERC721Received";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes4";
                                                    type: "bytes4";
                                                }];
                                            }, {
                                                stateMutability: "view";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "owner";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "targetPrincipal";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }, {
                                                    name: "_renegotiationOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "refinanceFull";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "targetPrincipal";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                                name: "refinancePartial";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "source";
                                                        internalType: "struct IMultiSourceLoan.Source[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                }];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "removeWhitelistedCallbackContract";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_repaymentData";
                                                    internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "data";
                                                        internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }, {
                                                            name: "shouldDelegate";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "source";
                                                            internalType: "struct IMultiSourceLoan.Source[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }];
                                                    }, {
                                                        name: "borrowerSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "repayLoan";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_collection";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "revokeDelegate";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newDelegateRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "setDelegateRegistry";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newFlashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "setFlashActionContract";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "__maxSources";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "setMaxSources";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "__minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "setMinLockPeriod";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [];
                                                name: "setProtocolFee";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "transferOwnership";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newMinimum";
                                                    internalType: "struct IBaseLoan.ImprovementMinimum";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "interest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "updateImprovementMinimum";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newDuration";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                name: "updateLiquidationAuctionDuration";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "loanLiquidator";
                                                    internalType: "contract ILoanLiquidator";
                                                    type: "address";
                                                }];
                                                name: "updateLiquidationContract";
                                                outputs: readonly [];
                                            }, {
                                                stateMutability: "nonpayable";
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newProtocolFee";
                                                    internalType: "struct IBaseLoan.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "updateProtocolFee";
                                                outputs: readonly [];
                                            }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated" | "BorrowerOfferCancelled" | "RevokeDelegate" | "DelegateRegistryUpdated" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "LoanExtended" | "MinLockPeriodUpdated")[]
                                                ? TFunctionName[number]
                                                : TFunctionName>

                                        +
                                        + +
                                        +
                                        \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.MslV6.html b/docs/0.17.2/classes/Internal.MslV6.html new file mode 100644 index 00000000..81b6a72d --- /dev/null +++ b/docs/0.17.2/classes/Internal.MslV6.html @@ -0,0 +1,1330 @@ +MslV6 | Gondi JS SDK - v0.17.2
                                        +
                                        + +
                                        +
                                        +
                                        +
                                        + +

                                        Class MslV6

                                        +
                                        +

                                        Hierarchy

                                        +
                                        +
                                        +
                                        +
                                        + +
                                        +
                                        +

                                        Constructors

                                        +
                                        + +
                                        +
                                        +

                                        Methods

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                structToSign: {
                                                    offerId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    capacity: bigint;
                                                    nftCollateralAddress: `0x${string}`;
                                                    nftCollateralTokenId: bigint;
                                                    principalAddress: `0x${string}`;
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                    maxSeniorRepayment: bigint;
                                                    validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[];
                                                };
                                            }
                                            +
                                              +
                                            • +
                                              structToSign: {
                                                  offerId: bigint;
                                                  lender: `0x${string}`;
                                                  fee: bigint;
                                                  capacity: bigint;
                                                  nftCollateralAddress: `0x${string}`;
                                                  nftCollateralTokenId: bigint;
                                                  principalAddress: `0x${string}`;
                                                  principalAmount: bigint;
                                                  aprBps: bigint;
                                                  expirationTime: bigint;
                                                  duration: bigint;
                                                  maxSeniorRepayment: bigint;
                                                  validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[];
                                              }
                                              +
                                                +
                                              • +
                                                offerId: bigint
                                              • +
                                              • +
                                                lender: `0x${string}`
                                              • +
                                              • +
                                                fee: bigint
                                              • +
                                              • +
                                                capacity: bigint
                                              • +
                                              • +
                                                nftCollateralAddress: `0x${string}`
                                              • +
                                              • +
                                                nftCollateralTokenId: bigint
                                              • +
                                              • +
                                                principalAddress: `0x${string}`
                                              • +
                                              • +
                                                principalAmount: bigint
                                              • +
                                              • +
                                                aprBps: bigint
                                              • +
                                              • +
                                                expirationTime: bigint
                                              • +
                                              • +
                                                duration: bigint
                                              • +
                                              • +
                                                maxSeniorRepayment: bigint
                                              • +
                                              • +
                                                validators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[]
                                          +

                                          Returns Promise<`0x${string}`>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                structToSign: {
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    trancheIndex: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                };
                                            }
                                            +
                                              +
                                            • +
                                              structToSign: {
                                                  renegotiationId: bigint;
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  fee: bigint;
                                                  trancheIndex: readonly bigint[];
                                                  principalAmount: bigint;
                                                  aprBps: bigint;
                                                  expirationTime: bigint;
                                                  duration: bigint;
                                              }
                                              +
                                                +
                                              • +
                                                renegotiationId: bigint
                                              • +
                                              • +
                                                loanId: bigint
                                              • +
                                              • +
                                                lender: `0x${string}`
                                              • +
                                              • +
                                                fee: bigint
                                              • +
                                              • +
                                                trancheIndex: readonly bigint[]
                                              • +
                                              • +
                                                principalAmount: bigint
                                              • +
                                              • +
                                                aprBps: bigint
                                              • +
                                              • +
                                                expirationTime: bigint
                                              • +
                                              • +
                                                duration: bigint
                                          +

                                          Returns Promise<`0x${string}`>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                id: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              id: bigint
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  lender: `0x${string}`;
                                                  offerId: bigint;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                minId: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              minId: bigint
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  lender: `0x${string}`;
                                                  minOfferId: bigint;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                id: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              id: bigint
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  lender: `0x${string}`;
                                                  renegotiationId: bigint;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            _: {
                                                minId: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              minId: bigint
                                          +

                                          Returns Promise<void>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  loan: {
                                                      contractAddress: `0x${string}`;
                                                      borrower: `0x${string}`;
                                                      nftCollateralTokenId: bigint;
                                                      nftCollateralAddress: `0x${string}`;
                                                      principalAddress: `0x${string}`;
                                                      principalAmount: bigint;
                                                      startTime: bigint;
                                                      duration: bigint;
                                                      tranche: readonly {
                                                          loanId: bigint;
                                                          floor: bigint;
                                                          principalAmount: bigint;
                                                          lender: `0x${string}`;
                                                          accruedInterest: bigint;
                                                          startTime: bigint;
                                                          aprBps: bigint;
                                                      }[];
                                                      protocolFee: bigint;
                                                      id: string;
                                                  };
                                                  loanId: bigint;
                                                  offerIds: string[];
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                delegations: `0x${string}`[];
                                                emit: EmitLoanArgs;
                                            }
                                            +
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  results: ({
                                                      loanId: bigint;
                                                      offerId: readonly bigint[];
                                                      loan: {
                                                          borrower: `0x${string}`;
                                                          nftCollateralTokenId: bigint;
                                                          nftCollateralAddress: `0x${string}`;
                                                          principalAddress: `0x${string}`;
                                                          principalAmount: bigint;
                                                          startTime: bigint;
                                                          duration: bigint;
                                                          tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                          protocolFee: bigint;
                                                      };
                                                      fee: bigint;
                                                  } | {
                                                      delegate: `0x${string}`;
                                                      collection: `0x${string}`;
                                                      tokenId: bigint;
                                                  })[];
                                                  loan: {
                                                      contractAddress: `0x${string}`;
                                                      borrower: `0x${string}`;
                                                      nftCollateralTokenId: bigint;
                                                      nftCollateralAddress: `0x${string}`;
                                                      principalAddress: `0x${string}`;
                                                      principalAmount: bigint;
                                                      startTime: bigint;
                                                      duration: bigint;
                                                      tranche: readonly {
                                                          loanId: bigint;
                                                          floor: bigint;
                                                          principalAmount: bigint;
                                                          lender: `0x${string}`;
                                                          accruedInterest: bigint;
                                                          startTime: bigint;
                                                          aprBps: bigint;
                                                      }[];
                                                      protocolFee: bigint;
                                                      id: string;
                                                  };
                                                  loanId: bigint;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                loan: LoanV6;
                                                loanId: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              loan: LoanV6
                                            • +
                                            • +
                                              loanId: bigint
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  loanId: bigint;
                                                  totalRepayment: bigint;
                                                  fee: bigint;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                loan: LoanV6;
                                            }
                                            +
                                          +

                                          Returns Promise<number>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                loan: Object;
                                            }
                                            +
                                              +
                                            • +
                                              loan: Object
                                          +

                                          Returns Promise<boolean>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                renegotiationId: bigint;
                                                refinancings: {
                                                    loan: LoanV6;
                                                    newAprBps: bigint;
                                                    sources: {
                                                        source: {
                                                            loanId: bigint;
                                                            floor: bigint;
                                                            principalAmount: bigint;
                                                            lender: `0x${string}`;
                                                            accruedInterest: bigint;
                                                            startTime: bigint;
                                                            aprBps: bigint;
                                                        } & {
                                                            loanIndex: number;
                                                        };
                                                        refinancingPrincipal: bigint;
                                                    }[];
                                                }[];
                                            }
                                            +
                                              +
                                            • +
                                              renegotiationId: bigint
                                            • +
                                            • +
                                              refinancings: {
                                                  loan: LoanV6;
                                                  newAprBps: bigint;
                                                  sources: {
                                                      source: {
                                                          loanId: bigint;
                                                          floor: bigint;
                                                          principalAmount: bigint;
                                                          lender: `0x${string}`;
                                                          accruedInterest: bigint;
                                                          startTime: bigint;
                                                          aprBps: bigint;
                                                      } & {
                                                          loanIndex: number;
                                                      };
                                                      refinancingPrincipal: bigint;
                                                  }[];
                                              }[]
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  results: {
                                                      renegotiationId: bigint;
                                                      oldLoanId: bigint;
                                                      newLoanId: bigint;
                                                      loan: {
                                                          borrower: `0x${string}`;
                                                          nftCollateralTokenId: bigint;
                                                          nftCollateralAddress: `0x${string}`;
                                                          principalAddress: `0x${string}`;
                                                          principalAmount: bigint;
                                                          startTime: bigint;
                                                          duration: bigint;
                                                          tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                          protocolFee: bigint;
                                                      };
                                                      fee: bigint;
                                                  }[];
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                offer: {
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    trancheIndex: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                };
                                                signature: `0x${string}`;
                                                loan: LoanV6;
                                            }
                                            +
                                              +
                                            • +
                                              offer: {
                                                  renegotiationId: bigint;
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  fee: bigint;
                                                  trancheIndex: readonly bigint[];
                                                  principalAmount: bigint;
                                                  aprBps: bigint;
                                                  expirationTime: bigint;
                                                  duration: bigint;
                                              }
                                              +
                                                +
                                              • +
                                                renegotiationId: bigint
                                              • +
                                              • +
                                                loanId: bigint
                                              • +
                                              • +
                                                lender: `0x${string}`
                                              • +
                                              • +
                                                fee: bigint
                                              • +
                                              • +
                                                trancheIndex: readonly bigint[]
                                              • +
                                              • +
                                                principalAmount: bigint
                                              • +
                                              • +
                                                aprBps: bigint
                                              • +
                                              • +
                                                expirationTime: bigint
                                              • +
                                              • +
                                                duration: bigint
                                            • +
                                            • +
                                              signature: `0x${string}`
                                            • +
                                            • +
                                              loan: LoanV6
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  loan: {
                                                      contractAddress: `0x${string}`;
                                                      borrower: `0x${string}`;
                                                      nftCollateralTokenId: bigint;
                                                      nftCollateralAddress: `0x${string}`;
                                                      principalAddress: `0x${string}`;
                                                      principalAmount: bigint;
                                                      startTime: bigint;
                                                      duration: bigint;
                                                      tranche: readonly {
                                                          loanId: bigint;
                                                          floor: bigint;
                                                          principalAmount: bigint;
                                                          lender: `0x${string}`;
                                                          accruedInterest: bigint;
                                                          startTime: bigint;
                                                          aprBps: bigint;
                                                      }[];
                                                      protocolFee: bigint;
                                                      id: string;
                                                  };
                                                  loanId: bigint;
                                                  renegotiationId: string;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                offer: {
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    trancheIndex: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                };
                                                loan: LoanV6;
                                            }
                                            +
                                              +
                                            • +
                                              offer: {
                                                  renegotiationId: bigint;
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  fee: bigint;
                                                  trancheIndex: readonly bigint[];
                                                  principalAmount: bigint;
                                                  aprBps: bigint;
                                                  expirationTime: bigint;
                                                  duration: bigint;
                                              }
                                              +
                                                +
                                              • +
                                                renegotiationId: bigint
                                              • +
                                              • +
                                                loanId: bigint
                                              • +
                                              • +
                                                lender: `0x${string}`
                                              • +
                                              • +
                                                fee: bigint
                                              • +
                                              • +
                                                trancheIndex: readonly bigint[]
                                              • +
                                              • +
                                                principalAmount: bigint
                                              • +
                                              • +
                                                aprBps: bigint
                                              • +
                                              • +
                                                expirationTime: bigint
                                              • +
                                              • +
                                                duration: bigint
                                            • +
                                            • +
                                              loan: LoanV6
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  loan: {
                                                      contractAddress: `0x${string}`;
                                                      borrower: `0x${string}`;
                                                      nftCollateralTokenId: bigint;
                                                      nftCollateralAddress: `0x${string}`;
                                                      principalAddress: `0x${string}`;
                                                      principalAmount: bigint;
                                                      startTime: bigint;
                                                      duration: bigint;
                                                      tranche: readonly {
                                                          loanId: bigint;
                                                          floor: bigint;
                                                          principalAmount: bigint;
                                                          lender: `0x${string}`;
                                                          accruedInterest: bigint;
                                                          startTime: bigint;
                                                          aprBps: bigint;
                                                      }[];
                                                      protocolFee: bigint;
                                                      id: string;
                                                  };
                                                  loanId: bigint;
                                                  renegotiationId: string;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                offer: {
                                                    renegotiationId: bigint;
                                                    loanId: bigint;
                                                    lender: `0x${string}`;
                                                    fee: bigint;
                                                    trancheIndex: readonly bigint[];
                                                    principalAmount: bigint;
                                                    aprBps: bigint;
                                                    expirationTime: bigint;
                                                    duration: bigint;
                                                };
                                                signature: `0x${string}`;
                                                loan: LoanV6;
                                            }
                                            +
                                              +
                                            • +
                                              offer: {
                                                  renegotiationId: bigint;
                                                  loanId: bigint;
                                                  lender: `0x${string}`;
                                                  fee: bigint;
                                                  trancheIndex: readonly bigint[];
                                                  principalAmount: bigint;
                                                  aprBps: bigint;
                                                  expirationTime: bigint;
                                                  duration: bigint;
                                              }
                                              +
                                                +
                                              • +
                                                renegotiationId: bigint
                                              • +
                                              • +
                                                loanId: bigint
                                              • +
                                              • +
                                                lender: `0x${string}`
                                              • +
                                              • +
                                                fee: bigint
                                              • +
                                              • +
                                                trancheIndex: readonly bigint[]
                                              • +
                                              • +
                                                principalAmount: bigint
                                              • +
                                              • +
                                                aprBps: bigint
                                              • +
                                              • +
                                                expirationTime: bigint
                                              • +
                                              • +
                                                duration: bigint
                                            • +
                                            • +
                                              signature: `0x${string}`
                                            • +
                                            • +
                                              loan: LoanV6
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  loan: {
                                                      contractAddress: `0x${string}`;
                                                      borrower: `0x${string}`;
                                                      nftCollateralTokenId: bigint;
                                                      nftCollateralAddress: `0x${string}`;
                                                      principalAddress: `0x${string}`;
                                                      principalAmount: bigint;
                                                      startTime: bigint;
                                                      duration: bigint;
                                                      tranche: readonly {
                                                          loanId: bigint;
                                                          floor: bigint;
                                                          principalAmount: bigint;
                                                          lender: `0x${string}`;
                                                          accruedInterest: bigint;
                                                          startTime: bigint;
                                                          aprBps: bigint;
                                                      }[];
                                                      protocolFee: bigint;
                                                      id: string;
                                                  };
                                                  loanId: bigint;
                                                  renegotiationId: string;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  loan: {
                                                      contractAddress: `0x${string}`;
                                                      borrower: `0x${string}`;
                                                      nftCollateralTokenId: bigint;
                                                      nftCollateralAddress: `0x${string}`;
                                                      principalAddress: `0x${string}`;
                                                      principalAmount: bigint;
                                                      startTime: bigint;
                                                      duration: bigint;
                                                      tranche: readonly {
                                                          loanId: bigint;
                                                          floor: bigint;
                                                          principalAmount: bigint;
                                                          lender: `0x${string}`;
                                                          accruedInterest: bigint;
                                                          startTime: bigint;
                                                          aprBps: bigint;
                                                      }[];
                                                      protocolFee: bigint;
                                                      id: string;
                                                  };
                                                  loanId: bigint;
                                                  offerIds: string[];
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            delegations: {
                                                loan: LoanV6;
                                                loanId: bigint;
                                                to: `0x${string}`;
                                                rights?: `0x${string}`;
                                                enable: boolean;
                                            }[]
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  results: {
                                                      loanId: bigint;
                                                      delegate: `0x${string}`;
                                                      _rights: `0x${string}`;
                                                      value: boolean;
                                                  }[];
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                loan: LoanV6;
                                                loanId: bigint;
                                                to: `0x${string}`;
                                                rights?: `0x${string}`;
                                                enable: boolean;
                                            }
                                            +
                                              +
                                            • +
                                              loan: LoanV6
                                            • +
                                            • +
                                              loanId: bigint
                                            • +
                                            • +
                                              to: `0x${string}`
                                            • +
                                            • +
                                              Optional rights?: `0x${string}`
                                            • +
                                            • +
                                              enable: boolean
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  loan: {
                                                      loanId: bigint;
                                                      contractAddress: `0x${string}`;
                                                      borrower: `0x${string}`;
                                                      nftCollateralTokenId: bigint;
                                                      nftCollateralAddress: `0x${string}`;
                                                      principalAddress: `0x${string}`;
                                                      principalAmount: bigint;
                                                      startTime: bigint | bigint & Date;
                                                      duration: bigint;
                                                      tranche: readonly {
                                                          loanId: bigint;
                                                          floor: bigint;
                                                          principalAmount: bigint;
                                                          lender: `0x${string}`;
                                                          accruedInterest: bigint;
                                                          startTime: bigint;
                                                          aprBps: bigint;
                                                      }[];
                                                      protocolFee: bigint;
                                                      contractStartTime: bigint | Date;
                                                  };
                                                  value: boolean;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                to: `0x${string}`;
                                                collection: `0x${string}`;
                                                tokenId: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              to: `0x${string}`
                                            • +
                                            • +
                                              collection: `0x${string}`
                                            • +
                                            • +
                                              tokenId: bigint
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  delegate: `0x${string}`;
                                                  collection: `0x${string}`;
                                                  tokenId: bigint;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            __namedParameters: {
                                                loan: LoanV6;
                                                loanId: bigint;
                                            }
                                            +
                                              +
                                            • +
                                              loan: LoanV6
                                            • +
                                            • +
                                              loanId: bigint
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<{
                                                  loanId: bigint;
                                              }>);
                                          }>

                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            calldata: `0x${string}`
                                          +

                                          Returns {
                                              data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: boolean; };
                                              loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; tranche: readonly { loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; protocolFee: bigint; };
                                              borrowerSignature: `0x${string}`;
                                          }

                                          +
                                            +
                                          • +
                                            data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: boolean; }
                                          • +
                                          • +
                                            loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; tranche: readonly { loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; protocolFee: bigint; }
                                          • +
                                          • +
                                            borrowerSignature: `0x${string}`
                                        +
                                        + +
                                          + +
                                        • +
                                          +

                                          Parameters

                                          +
                                            +
                                          • +
                                            data: `0x${string}`
                                          +

                                          Returns Promise<{
                                              txHash: `0x${string}`;
                                              waitTxInBlock: (() => Promise<TransactionReceipt>);
                                          }>

                                        +
                                        +

                                        Properties

                                        +
                                        + +
                                        abi: readonly [{
                                            type: "constructor";
                                            inputs: readonly [{
                                                name: "loanLiquidator";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "protocolFee";
                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "currencyManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "collectionManager";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "maxTranches";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "delegateRegistry";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "loanManagerRegistry";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "flashActionContract";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "minWaitTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "AddressZeroError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "CancelledOrExecutedOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CollectionNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "CurrencyNotWhitelistedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ECDSAInvalidSignature";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "length";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ECDSAInvalidSignatureLength";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "s";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                            name: "ECDSAInvalidSignatureS";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "ExpiredOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidAddressesError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_amount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_principalAmount";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidAmountError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCallbackError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCallerError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidCollateralIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidDurationError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidInputError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "InvalidLoanError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidMethodError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidParametersError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidRenegotiationOfferError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidSignatureError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "InvalidTrancheError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_liquidator";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "LiquidatorOnlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LoanExpiredError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "LoanLockedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_expirationTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LoanNotDueError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_newMinRenegotiationOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "LowRenegotiationOfferIdError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "MaxCapacityExceededError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "MismatchError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "i";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "returndata";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "MulticallFailed";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "NFTNotReturnedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "NotStrictlyImprovedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "_pendingProtocolFeeSetTime";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TooEarlyError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "TooManyTranchesError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "TooSoonError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [{
                                                name: "minTimestamp";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "TrancheCannotBeRefinancedError";
                                        }, {
                                            type: "error";
                                            inputs: readonly [];
                                            name: "ZeroInterestError";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "AllOffersCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                type: "uint256";
                                                indexed: false;
                                                internalType: "uint256";
                                            }, {
                                                name: "delegate";
                                                type: "address";
                                                indexed: false;
                                                internalType: "address";
                                            }, {
                                                name: "_rights";
                                                type: "bytes32";
                                                indexed: false;
                                                internalType: "bytes32";
                                            }, {
                                                name: "value";
                                                type: "bool";
                                                indexed: false;
                                                internalType: "bool";
                                            }];
                                            name: "Delegated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newFlashActionContract";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "FlashActionContractUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "target";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "data";
                                                internalType: "bytes";
                                                type: "bytes";
                                                indexed: false;
                                            }];
                                            name: "FlashActionExecuted";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newDuration";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LiquidationAuctionDurationUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LiquidationContractUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanEmitted";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanForeclosed";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanLiquidated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "oldLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "newLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRefinanced";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "newLoanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }, {
                                                name: "offerIds";
                                                internalType: "uint256[]";
                                                type: "uint256[]";
                                                indexed: false;
                                            }, {
                                                name: "totalFee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRefinancedFromNewOffers";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "totalRepayment";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "fee";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "LoanRepaid";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }, {
                                                name: "liquidator";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "LoanSentToLiquidator";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "_minimum";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "MinAprImprovementUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newMinBid";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "MinBidLiquidationUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "MinLockPeriodUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "OfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "user";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }, {
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                                indexed: true;
                                            }];
                                            name: "OwnershipTransferred";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeePendingUpdate";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "fee";
                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                indexed: false;
                                            }];
                                            name: "ProtocolFeeUpdated";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "lender";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "RenegotiationOfferCancelled";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "delegate";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "collection";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }, {
                                                name: "tokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                                indexed: false;
                                            }];
                                            name: "RevokeDelegate";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "TransferOwnerRequested";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contractAdded";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractAdded";
                                        }, {
                                            type: "event";
                                            anonymous: false;
                                            inputs: readonly [{
                                                name: "contractRemoved";
                                                internalType: "address";
                                                type: "address";
                                                indexed: false;
                                            }];
                                            name: "WhitelistedCallbackContractRemoved";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "FEE_UPDATE_NOTICE";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "INITIAL_DOMAIN_SEPARATOR";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MAX_AUCTION_DURATION";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MIN_AUCTION_DURATION";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MIN_BID_LIQUIDATION";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "MIN_WAIT_TIME";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "VERSION";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "trancheIndex";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_renegotiationOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "addNewTranche";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "addWhitelistedCallbackContract";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelAllOffers";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelOffer";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "cancelRenegotiationOffer";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_delegate";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_rights";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }, {
                                                name: "_value";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            name: "delegate";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanExecutionData";
                                                internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "executionData";
                                                    internalType: "struct IMultiSourceLoan.ExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "offerExecution";
                                                        internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "offer";
                                                            internalType: "struct IMultiSourceLoan.LoanOffer";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "offerId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "fee";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "capacity";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "expirationTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "maxSeniorRepayment";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "validators";
                                                                internalType: "struct IBaseLoan.OfferValidator[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "validator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "arguments";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                            }];
                                                        }, {
                                                            name: "amount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lenderOfferSignature";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }, {
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalReceiver";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "callbackData";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }, {
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "borrowerOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }];
                                            name: "emitLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_target";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_data";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "executeFlashAction";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCollectionManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getCurrencyManager";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getDelegateRegistry";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getFlashActionContract";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidationAuctionDuration";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLiquidator";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getLoanHash";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes32";
                                                type: "bytes32";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getLoanManagerRegistry";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "contract ILoanManagerRegistry";
                                                type: "address";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getMaxTranches";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getMinImprovementApr";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getMinLockPeriod";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getPendingProtocolFeeSetTime";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getProtocolFee";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "getTotalLoansIssued";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_lender";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "getUsedCapacity";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "user";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "offerId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isOfferCancelled";
                                            outputs: readonly [{
                                                name: "notActive";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "user";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "renegotiationIf";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "isRenegotiationOfferCancelled";
                                            outputs: readonly [{
                                                name: "notActive";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "isWhitelistedCallbackContract";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bool";
                                                type: "bool";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "liquidateLoan";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "loanLiquidated";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "user";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "minOfferId";
                                            outputs: readonly [{
                                                name: "minOfferId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "data";
                                                internalType: "bytes[]";
                                                type: "bytes[]";
                                            }];
                                            name: "multicall";
                                            outputs: readonly [{
                                                name: "results";
                                                internalType: "bytes[]";
                                                type: "bytes[]";
                                            }];
                                            stateMutability: "payable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "name";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "string";
                                                type: "string";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "onERC721Received";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "bytes4";
                                                type: "bytes4";
                                            }];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "owner";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "pendingOwner";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "pendingOwnerTime";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            stateMutability: "view";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_loanId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_loanExecutionData";
                                                internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "executionData";
                                                    internalType: "struct IMultiSourceLoan.ExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "offerExecution";
                                                        internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "offer";
                                                            internalType: "struct IMultiSourceLoan.LoanOffer";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "offerId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "fee";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "capacity";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "expirationTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "maxSeniorRepayment";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "validators";
                                                                internalType: "struct IBaseLoan.OfferValidator[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "validator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "arguments";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                            }];
                                                        }, {
                                                            name: "amount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lenderOfferSignature";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }, {
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalReceiver";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "callbackData";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }, {
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "borrowerOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }];
                                            name: "refinanceFromLoanExecutionData";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "trancheIndex";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_renegotiationOfferSignature";
                                                internalType: "bytes";
                                                type: "bytes";
                                            }];
                                            name: "refinanceFull";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_renegotiationOffer";
                                                internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "trancheIndex";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "aprBps";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }, {
                                                name: "_loan";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "refinancePartial";
                                            outputs: readonly [{
                                                name: "";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }, {
                                                name: "";
                                                internalType: "struct IMultiSourceLoan.Loan";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "borrower";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "nftCollateralTokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "nftCollateralAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAddress";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "startTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "duration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "tranche";
                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                    type: "tuple[]";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "floor";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "accruedInterest";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_contract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "removeWhitelistedCallbackContract";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_repaymentData";
                                                internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "data";
                                                    internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "callbackData";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }, {
                                                        name: "shouldDelegate";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "borrowerSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                            }];
                                            name: "repayLoan";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newOwner";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "requestTransferOwner";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_delegate";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_collection";
                                                internalType: "address";
                                                type: "address";
                                            }, {
                                                name: "_tokenId";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "revokeDelegate";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newFlashActionContract";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "setFlashActionContract";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "__minLockPeriod";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "setMinLockPeriod";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "setProtocolFee";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [];
                                            name: "transferOwnership";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "newOwner";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "transferOwnership";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newDuration";
                                                internalType: "uint48";
                                                type: "uint48";
                                            }];
                                            name: "updateLiquidationAuctionDuration";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "__loanLiquidator";
                                                internalType: "address";
                                                type: "address";
                                            }];
                                            name: "updateLiquidationContract";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newMinimum";
                                                internalType: "uint256";
                                                type: "uint256";
                                            }];
                                            name: "updateMinImprovementApr";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }, {
                                            type: "function";
                                            inputs: readonly [{
                                                name: "_newProtocolFee";
                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                type: "tuple";
                                                components: readonly [{
                                                    name: "recipient";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "fraction";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                            }];
                                            name: "updateProtocolFee";
                                            outputs: readonly [];
                                            stateMutability: "nonpayable";
                                        }]
                                        +
                                        + +
                                        address: `0x${string}`
                                        +
                                        + +
                                        bcClient: {}
                                        +
                                        +

                                        Type declaration

                                        +
                                          +
                                          + +
                                          wallet: {}
                                          +
                                          +

                                          Type declaration

                                          +
                                            +
                                            + +
                                            contract: GetContractReturnType<readonly [{
                                                type: "constructor";
                                                inputs: readonly [{
                                                    name: "loanLiquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "currencyManager";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "collectionManager";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "maxTranches";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "delegateRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "loanManagerRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "flashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "minWaitTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "AddressZeroError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "CancelledOrExecutedOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CollectionNotWhitelistedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CurrencyNotWhitelistedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ECDSAInvalidSignature";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "length";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ECDSAInvalidSignatureLength";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "s";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                name: "ECDSAInvalidSignatureS";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ExpiredOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidAddressesError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_amount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidAmountError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCallbackError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCallerError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCollateralIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidDurationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidInputError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidLoanError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidMethodError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidParametersError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidRenegotiationOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidSignatureError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidTrancheError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "LiquidatorOnlyError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "LoanExpiredError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "LoanLockedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LoanNotDueError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_newMinOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LowOfferIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_newMinRenegotiationOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LowRenegotiationOfferIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "MaxCapacityExceededError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "MismatchError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "i";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "returndata";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "MulticallFailed";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "NFTNotReturnedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "NotStrictlyImprovedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_pendingProtocolFeeSetTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TooEarlyError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "TooManyTranchesError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "TooSoonError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "minTimestamp";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TrancheCannotBeRefinancedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ZeroInterestError";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "AllOffersCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    type: "uint256";
                                                    indexed: false;
                                                    internalType: "uint256";
                                                }, {
                                                    name: "delegate";
                                                    type: "address";
                                                    indexed: false;
                                                    internalType: "address";
                                                }, {
                                                    name: "_rights";
                                                    type: "bytes32";
                                                    indexed: false;
                                                    internalType: "bytes32";
                                                }, {
                                                    name: "value";
                                                    type: "bool";
                                                    indexed: false;
                                                    internalType: "bool";
                                                }];
                                                name: "Delegated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newFlashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "FlashActionContractUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "target";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "data";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                    indexed: false;
                                                }];
                                                name: "FlashActionExecuted";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newDuration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LiquidationAuctionDurationUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "LiquidationContractUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanEmitted";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanForeclosed";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanLiquidated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "oldLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "newLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRefinanced";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "newLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "offerIds";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                    indexed: false;
                                                }, {
                                                    name: "totalFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRefinancedFromNewOffers";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "totalRepayment";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRepaid";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "LoanSentToLiquidator";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "_minimum";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MinAprImprovementUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newMinBid";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MinBidLiquidationUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MinLockPeriodUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "OfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }];
                                                name: "OwnershipTransferred";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "fee";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ProtocolFeePendingUpdate";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "fee";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ProtocolFeeUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "RenegotiationOfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "collection";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "RevokeDelegate";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "TransferOwnerRequested";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "contractAdded";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "WhitelistedCallbackContractAdded";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "contractRemoved";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "WhitelistedCallbackContractRemoved";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "DOMAIN_SEPARATOR";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "FEE_UPDATE_NOTICE";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "INITIAL_DOMAIN_SEPARATOR";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MAX_AUCTION_DURATION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MIN_AUCTION_DURATION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MIN_BID_LIQUIDATION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MIN_WAIT_TIME";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "VERSION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "trancheIndex";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_renegotiationOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "addNewTranche";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "addWhitelistedCallbackContract";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelAllOffers";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelOffer";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelRenegotiationOffer";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_rights";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }, {
                                                    name: "_value";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                name: "delegate";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanExecutionData";
                                                    internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "executionData";
                                                        internalType: "struct IMultiSourceLoan.ExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "offerExecution";
                                                            internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "offer";
                                                                internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                type: "tuple";
                                                                components: readonly [{
                                                                    name: "offerId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "fee";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "capacity";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "expirationTime";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "maxSeniorRepayment";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "validators";
                                                                    internalType: "struct IBaseLoan.OfferValidator[]";
                                                                    type: "tuple[]";
                                                                    components: readonly [{
                                                                        name: "validator";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "arguments";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                }];
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lenderOfferSignature";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }, {
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalReceiver";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }, {
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "borrowerOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "emitLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_target";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_data";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "executeFlashAction";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getCollectionManager";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getCurrencyManager";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getDelegateRegistry";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getFlashActionContract";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLiquidationAuctionDuration";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLiquidator";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getLoanHash";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLoanManagerRegistry";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "contract ILoanManagerRegistry";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMaxTranches";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMinImprovementApr";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMinLockPeriod";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getPendingProtocolFee";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getPendingProtocolFeeSetTime";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getProtocolFee";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getTotalLoansIssued";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getUsedCapacity";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isOfferCancelled";
                                                outputs: readonly [{
                                                    name: "notActive";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "renegotiationIf";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isRenegotiationOfferCancelled";
                                                outputs: readonly [{
                                                    name: "notActive";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "isWhitelistedCallbackContract";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "liquidateLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "loanLiquidated";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "minOfferId";
                                                outputs: readonly [{
                                                    name: "minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "data";
                                                    internalType: "bytes[]";
                                                    type: "bytes[]";
                                                }];
                                                name: "multicall";
                                                outputs: readonly [{
                                                    name: "results";
                                                    internalType: "bytes[]";
                                                    type: "bytes[]";
                                                }];
                                                stateMutability: "payable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "name";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "string";
                                                    type: "string";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "onERC721Received";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes4";
                                                    type: "bytes4";
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "owner";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "pendingOwner";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "pendingOwnerTime";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loanExecutionData";
                                                    internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "executionData";
                                                        internalType: "struct IMultiSourceLoan.ExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "offerExecution";
                                                            internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "offer";
                                                                internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                type: "tuple";
                                                                components: readonly [{
                                                                    name: "offerId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "fee";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "capacity";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "expirationTime";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "maxSeniorRepayment";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "validators";
                                                                    internalType: "struct IBaseLoan.OfferValidator[]";
                                                                    type: "tuple[]";
                                                                    components: readonly [{
                                                                        name: "validator";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "arguments";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                }];
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lenderOfferSignature";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }, {
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalReceiver";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }, {
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "borrowerOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "refinanceFromLoanExecutionData";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "trancheIndex";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_renegotiationOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "refinanceFull";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "trancheIndex";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "refinancePartial";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "removeWhitelistedCallbackContract";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_repaymentData";
                                                    internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "data";
                                                        internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }, {
                                                            name: "shouldDelegate";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "borrowerSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "repayLoan";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "requestTransferOwner";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_collection";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "revokeDelegate";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newFlashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "setFlashActionContract";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "__minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "setMinLockPeriod";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "setProtocolFee";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "transferOwnership";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "transferOwnership";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newDuration";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                name: "updateLiquidationAuctionDuration";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "__loanLiquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "updateLiquidationContract";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newMinimum";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "updateMinImprovementApr";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newProtocolFee";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "updateProtocolFee";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }], {} | {}>
                                            +
                                            + +
                                            safeContractWrite: {
                                                transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                                                onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                addWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                                cancelAllOffers: ((args, options?) => Promise<`0x${string}`>);
                                                cancelOffer: ((args, options?) => Promise<`0x${string}`>);
                                                cancelRenegotiationOffer: ((args, options?) => Promise<`0x${string}`>);
                                                loanLiquidated: ((args, options?) => Promise<`0x${string}`>);
                                                removeWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                                setProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                updateLiquidationAuctionDuration: ((args, options?) => Promise<`0x${string}`>);
                                                updateLiquidationContract: ((args, options?) => Promise<`0x${string}`>);
                                                updateProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                emitLoan: ((args, options?) => Promise<`0x${string}`>);
                                                refinanceFull: ((args, options?) => Promise<`0x${string}`>);
                                                refinancePartial: ((args, options?) => Promise<`0x${string}`>);
                                                repayLoan: ((args, options?) => Promise<`0x${string}`>);
                                                multicall: ((args, options?) => Promise<`0x${string}`>);
                                                delegate: ((args, options?) => Promise<`0x${string}`>);
                                                revokeDelegate: ((args, options?) => Promise<`0x${string}`>);
                                                executeFlashAction: ((args, options?) => Promise<`0x${string}`>);
                                                setFlashActionContract: ((args, options?) => Promise<`0x${string}`>);
                                                setMinLockPeriod: ((args, options?) => Promise<`0x${string}`>);
                                                requestTransferOwner: ((args, options?) => Promise<`0x${string}`>);
                                                updateMinImprovementApr: ((args, options?) => Promise<`0x${string}`>);
                                                addNewTranche: ((args, options?) => Promise<`0x${string}`>);
                                                refinanceFromLoanExecutionData: ((args, options?) => Promise<`0x${string}`>);
                                            }
                                            +
                                            +

                                            Type declaration

                                            +
                                              +
                                            • +
                                              transferOwnership: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: undefined | readonly [] | readonly [`0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              liquidateLoan: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }] | readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }] & readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              onERC721Received: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              addWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [`0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              cancelAllOffers: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              cancelOffer: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              cancelRenegotiationOffer: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              loanLiquidated: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }] | readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }] & readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              removeWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [`0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              setProtocolFee: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: undefined | readonly []
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              updateLiquidationAuctionDuration: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [number]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              updateLiquidationContract: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [`0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              updateProtocolFee: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [{
                                                        recipient: `0x${string}`;
                                                        fraction: bigint;
                                                    }] | readonly [{
                                                        recipient: `0x${string}`;
                                                        fraction: bigint;
                                                    }] & readonly [{
                                                        recipient: `0x${string}`;
                                                        fraction: bigint;
                                                    }]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              emitLoan: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [{
                                                        executionData: { offerExecution: readonly { offer: { offerId: bigint; lender: `0x${string}`; fee: bigint; capacity: bigint; nftCollateralAddress: `0x${string}`; nftCollateralTokenId: bigint; principalAddress: `0x${string}`; principalAmount: bigint; aprBps: bigint; expirationTime: bigint; duration: bigint; maxSeniorRepayment: bigint; validators: readonly { validator: `0x${string}`; arguments: `0x${string}`; }[]; }; amount: bigint; lenderOfferSignature: `0x${string}`; }[]; tokenId: bigint; duration: bigint; expirationTime: bigint; principalReceiver: `0x${string}`; callbackData: `0x${string}`; };
                                                        borrower: `0x${string}`;
                                                        borrowerOfferSignature: `0x${string}`;
                                                    }] | readonly [{
                                                        executionData: { offerExecution: readonly { offer: { offerId: bigint; lender: `0x${string}`; fee: bigint; capacity: bigint; nftCollateralAddress: `0x${string}`; nftCollateralTokenId: bigint; principalAddress: `0x${string}`; principalAmount: bigint; aprBps: bigint; expirationTime: bigint; duration: bigint; maxSeniorRepayment: bigint; validators: readonly { validator: `0x${string}`; arguments: `0x${string}`; }[]; }; amount: bigint; lenderOfferSignature: `0x${string}`; }[]; tokenId: bigint; duration: bigint; expirationTime: bigint; principalReceiver: `0x${string}`; callbackData: `0x${string}`; };
                                                        borrower: `0x${string}`;
                                                        borrowerOfferSignature: `0x${string}`;
                                                    }] & readonly [{
                                                        executionData: { offerExecution: readonly { offer: { offerId: bigint; lender: `0x${string}`; fee: bigint; capacity: bigint; nftCollateralAddress: `0x${string}`; nftCollateralTokenId: bigint; principalAddress: `0x${string}`; principalAmount: bigint; aprBps: bigint; expirationTime: bigint; duration: bigint; maxSeniorRepayment: bigint; validators: readonly { validator: `0x${string}`; arguments: `0x${string}`; }[]; }; amount: bigint; lenderOfferSignature: `0x${string}`; }[]; tokenId: bigint; duration: bigint; expirationTime: bigint; principalReceiver: `0x${string}`; callbackData: `0x${string}`; };
                                                        borrower: `0x${string}`;
                                                        borrowerOfferSignature: `0x${string}`;
                                                    }]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              refinanceFull: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [{
                                                        renegotiationId: bigint;
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        fee: bigint;
                                                        trancheIndex: readonly bigint[];
                                                        principalAmount: bigint;
                                                        aprBps: bigint;
                                                        expirationTime: bigint;
                                                        duration: bigint;
                                                    }, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`] | readonly [{
                                                        renegotiationId: bigint;
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        fee: bigint;
                                                        trancheIndex: readonly bigint[];
                                                        principalAmount: bigint;
                                                        aprBps: bigint;
                                                        expirationTime: bigint;
                                                        duration: bigint;
                                                    }, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`] & readonly [{
                                                        renegotiationId: bigint;
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        fee: bigint;
                                                        trancheIndex: readonly bigint[];
                                                        principalAmount: bigint;
                                                        aprBps: bigint;
                                                        expirationTime: bigint;
                                                        duration: bigint;
                                                    }, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              refinancePartial: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [{
                                                        renegotiationId: bigint;
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        fee: bigint;
                                                        trancheIndex: readonly bigint[];
                                                        principalAmount: bigint;
                                                        aprBps: bigint;
                                                        expirationTime: bigint;
                                                        duration: bigint;
                                                    }, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }] | readonly [{
                                                        renegotiationId: bigint;
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        fee: bigint;
                                                        trancheIndex: readonly bigint[];
                                                        principalAmount: bigint;
                                                        aprBps: bigint;
                                                        expirationTime: bigint;
                                                        duration: bigint;
                                                    }, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }] & readonly [{
                                                        renegotiationId: bigint;
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        fee: bigint;
                                                        trancheIndex: readonly bigint[];
                                                        principalAmount: bigint;
                                                        aprBps: bigint;
                                                        expirationTime: bigint;
                                                        duration: bigint;
                                                    }, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              repayLoan: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [{
                                                        data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: Widen<boolean>; };
                                                        loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; tranche: readonly { loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; protocolFee: bigint; };
                                                        borrowerSignature: `0x${string}`;
                                                    }] | readonly [{
                                                        data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: boolean; };
                                                        loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; tranche: readonly { loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; protocolFee: bigint; };
                                                        borrowerSignature: `0x${string}`;
                                                    }] & readonly [{
                                                        data: { loanId: bigint; callbackData: `0x${string}`; shouldDelegate: Widen<boolean>; };
                                                        loan: { borrower: `0x${string}`; nftCollateralTokenId: bigint; nftCollateralAddress: `0x${string}`; principalAddress: `0x${string}`; principalAmount: bigint; startTime: bigint; duration: bigint; tranche: readonly { loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; }[]; protocolFee: bigint; };
                                                        borrowerSignature: `0x${string}`;
                                                    }]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              multicall: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [readonly `0x${string}`[]] | readonly [readonly `0x${string}`[]] & readonly [readonly `0x${string}`[]]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              delegate: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`, `0x${string}`, Widen<boolean>] | readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`, `0x${string}`, boolean] & readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`, `0x${string}`, Widen<boolean>]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              revokeDelegate: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [`0x${string}`, `0x${string}`, bigint]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              executeFlashAction: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`, `0x${string}`] | readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`, `0x${string}`] & readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`, `0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              setFlashActionContract: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [`0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              setMinLockPeriod: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              requestTransferOwner: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [`0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              updateMinImprovementApr: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              addNewTranche: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [{
                                                        renegotiationId: bigint;
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        fee: bigint;
                                                        trancheIndex: readonly bigint[];
                                                        principalAmount: bigint;
                                                        aprBps: bigint;
                                                        expirationTime: bigint;
                                                        duration: bigint;
                                                    }, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`] | readonly [{
                                                        renegotiationId: bigint;
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        fee: bigint;
                                                        trancheIndex: readonly bigint[];
                                                        principalAmount: bigint;
                                                        aprBps: bigint;
                                                        expirationTime: bigint;
                                                        duration: bigint;
                                                    }, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`] & readonly [{
                                                        renegotiationId: bigint;
                                                        loanId: bigint;
                                                        lender: `0x${string}`;
                                                        fee: bigint;
                                                        trancheIndex: readonly bigint[];
                                                        principalAmount: bigint;
                                                        aprBps: bigint;
                                                        expirationTime: bigint;
                                                        duration: bigint;
                                                    }, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, `0x${string}`]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            • +
                                            • +
                                              refinanceFromLoanExecutionData: ((args, options?) => Promise<`0x${string}`>)
                                              +
                                                +
                                              • +
                                                  +
                                                • (args, options?): Promise<`0x${string}`>
                                                • +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    args: readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, {
                                                        executionData: { offerExecution: readonly { offer: { offerId: bigint; lender: `0x${string}`; fee: bigint; capacity: bigint; nftCollateralAddress: `0x${string}`; nftCollateralTokenId: bigint; principalAddress: `0x${string}`; principalAmount: bigint; aprBps: bigint; expirationTime: bigint; duration: bigint; maxSeniorRepayment: bigint; validators: readonly { validator: `0x${string}`; arguments: `0x${string}`; }[]; }; amount: bigint; lenderOfferSignature: `0x${string}`; }[]; tokenId: bigint; duration: bigint; expirationTime: bigint; principalReceiver: `0x${string}`; callbackData: `0x${string}`; };
                                                        borrower: `0x${string}`;
                                                        borrowerOfferSignature: `0x${string}`;
                                                    }] | readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, {
                                                        executionData: { offerExecution: readonly { offer: { offerId: bigint; lender: `0x${string}`; fee: bigint; capacity: bigint; nftCollateralAddress: `0x${string}`; nftCollateralTokenId: bigint; principalAddress: `0x${string}`; principalAmount: bigint; aprBps: bigint; expirationTime: bigint; duration: bigint; maxSeniorRepayment: bigint; validators: readonly { validator: `0x${string}`; arguments: `0x${string}`; }[]; }; amount: bigint; lenderOfferSignature: `0x${string}`; }[]; tokenId: bigint; duration: bigint; expirationTime: bigint; principalReceiver: `0x${string}`; callbackData: `0x${string}`; };
                                                        borrower: `0x${string}`;
                                                        borrowerOfferSignature: `0x${string}`;
                                                    }] & readonly [bigint, {
                                                        borrower: `0x${string}`;
                                                        nftCollateralTokenId: bigint;
                                                        nftCollateralAddress: `0x${string}`;
                                                        principalAddress: `0x${string}`;
                                                        principalAmount: bigint;
                                                        startTime: bigint;
                                                        duration: bigint;
                                                        tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                        protocolFee: bigint;
                                                    }, {
                                                        executionData: { offerExecution: readonly { offer: { offerId: bigint; lender: `0x${string}`; fee: bigint; capacity: bigint; nftCollateralAddress: `0x${string}`; nftCollateralTokenId: bigint; principalAddress: `0x${string}`; principalAmount: bigint; aprBps: bigint; expirationTime: bigint; duration: bigint; maxSeniorRepayment: bigint; validators: readonly { validator: `0x${string}`; arguments: `0x${string}`; }[]; }; amount: bigint; lenderOfferSignature: `0x${string}`; }[]; tokenId: bigint; duration: bigint; expirationTime: bigint; principalReceiver: `0x${string}`; callbackData: `0x${string}`; };
                                                        borrower: `0x${string}`;
                                                        borrowerOfferSignature: `0x${string}`;
                                                    }]
                                                  • +
                                                  • +
                                                    Optional options: {
                                                        value?: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      Optional value?: bigint
                                                  +

                                                  Returns Promise<`0x${string}`>

                                            +
                                            + +
                                            parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                type: "constructor";
                                                inputs: readonly [{
                                                    name: "loanLiquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "protocolFee";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "currencyManager";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "collectionManager";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "maxTranches";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "delegateRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "loanManagerRegistry";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "flashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "minWaitTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "AddressZeroError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "CancelledOrExecutedOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CollectionNotWhitelistedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "CurrencyNotWhitelistedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ECDSAInvalidSignature";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "length";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ECDSAInvalidSignatureLength";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "s";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                name: "ECDSAInvalidSignatureS";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ExpiredOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidAddressesError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_amount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_principalAmount";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidAmountError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCallbackError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCallerError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidCollateralIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidDurationError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidInputError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "InvalidLoanError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidMethodError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidParametersError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidRenegotiationOfferError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidSignatureError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "InvalidTrancheError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "LiquidatorOnlyError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "LoanExpiredError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "LoanLockedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_expirationTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LoanNotDueError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_newMinOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LowOfferIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_newMinRenegotiationOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "LowRenegotiationOfferIdError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "MaxCapacityExceededError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "MismatchError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "i";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "returndata";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "MulticallFailed";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "NFTNotReturnedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "NotStrictlyImprovedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "_pendingProtocolFeeSetTime";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TooEarlyError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "TooManyTranchesError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "TooSoonError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [{
                                                    name: "minTimestamp";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "TrancheCannotBeRefinancedError";
                                            }, {
                                                type: "error";
                                                inputs: readonly [];
                                                name: "ZeroInterestError";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "AllOffersCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    type: "uint256";
                                                    indexed: false;
                                                    internalType: "uint256";
                                                }, {
                                                    name: "delegate";
                                                    type: "address";
                                                    indexed: false;
                                                    internalType: "address";
                                                }, {
                                                    name: "_rights";
                                                    type: "bytes32";
                                                    indexed: false;
                                                    internalType: "bytes32";
                                                }, {
                                                    name: "value";
                                                    type: "bool";
                                                    indexed: false;
                                                    internalType: "bool";
                                                }];
                                                name: "Delegated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newFlashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "FlashActionContractUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "target";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "data";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                    indexed: false;
                                                }];
                                                name: "FlashActionExecuted";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newDuration";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LiquidationAuctionDurationUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "LiquidationContractUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanEmitted";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanForeclosed";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanLiquidated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "oldLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "newLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRefinanced";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "newLoanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }, {
                                                    name: "offerIds";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                    indexed: false;
                                                }, {
                                                    name: "totalFee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRefinancedFromNewOffers";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "totalRepayment";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "fee";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "LoanRepaid";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }, {
                                                    name: "liquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "LoanSentToLiquidator";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "_minimum";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MinAprImprovementUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newMinBid";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MinBidLiquidationUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "MinLockPeriodUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "OfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }];
                                                name: "OwnershipTransferred";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "fee";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ProtocolFeePendingUpdate";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "fee";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    indexed: false;
                                                }];
                                                name: "ProtocolFeeUpdated";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "lender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "RenegotiationOfferCancelled";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "collection";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }, {
                                                    name: "tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: false;
                                                }];
                                                name: "RevokeDelegate";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "TransferOwnerRequested";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "contractAdded";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "WhitelistedCallbackContractAdded";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "contractRemoved";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: false;
                                                }];
                                                name: "WhitelistedCallbackContractRemoved";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "DOMAIN_SEPARATOR";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "FEE_UPDATE_NOTICE";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "INITIAL_DOMAIN_SEPARATOR";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MAX_AUCTION_DURATION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MIN_AUCTION_DURATION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MIN_BID_LIQUIDATION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "MIN_WAIT_TIME";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "VERSION";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "trancheIndex";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_renegotiationOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "addNewTranche";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "addWhitelistedCallbackContract";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelAllOffers";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelOffer";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "cancelRenegotiationOffer";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_rights";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }, {
                                                    name: "_value";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                name: "delegate";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanExecutionData";
                                                    internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "executionData";
                                                        internalType: "struct IMultiSourceLoan.ExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "offerExecution";
                                                            internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "offer";
                                                                internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                type: "tuple";
                                                                components: readonly [{
                                                                    name: "offerId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "fee";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "capacity";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "expirationTime";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "maxSeniorRepayment";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "validators";
                                                                    internalType: "struct IBaseLoan.OfferValidator[]";
                                                                    type: "tuple[]";
                                                                    components: readonly [{
                                                                        name: "validator";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "arguments";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                }];
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lenderOfferSignature";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }, {
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalReceiver";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }, {
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "borrowerOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "emitLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_target";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_data";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "executeFlashAction";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getCollectionManager";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getCurrencyManager";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getDelegateRegistry";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getFlashActionContract";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLiquidationAuctionDuration";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLiquidator";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getLoanHash";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes32";
                                                    type: "bytes32";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getLoanManagerRegistry";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "contract ILoanManagerRegistry";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMaxTranches";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMinImprovementApr";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getMinLockPeriod";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getPendingProtocolFee";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getPendingProtocolFeeSetTime";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getProtocolFee";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "getTotalLoansIssued";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_lender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getUsedCapacity";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "offerId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isOfferCancelled";
                                                outputs: readonly [{
                                                    name: "notActive";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "renegotiationIf";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "isRenegotiationOfferCancelled";
                                                outputs: readonly [{
                                                    name: "notActive";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "isWhitelistedCallbackContract";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "liquidateLoan";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "loanLiquidated";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "minOfferId";
                                                outputs: readonly [{
                                                    name: "minOfferId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "data";
                                                    internalType: "bytes[]";
                                                    type: "bytes[]";
                                                }];
                                                name: "multicall";
                                                outputs: readonly [{
                                                    name: "results";
                                                    internalType: "bytes[]";
                                                    type: "bytes[]";
                                                }];
                                                stateMutability: "payable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "name";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "string";
                                                    type: "string";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "onERC721Received";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bytes4";
                                                    type: "bytes4";
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "owner";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "pendingOwner";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "pendingOwnerTime";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_loanId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loanExecutionData";
                                                    internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "executionData";
                                                        internalType: "struct IMultiSourceLoan.ExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "offerExecution";
                                                            internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "offer";
                                                                internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                type: "tuple";
                                                                components: readonly [{
                                                                    name: "offerId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "fee";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "capacity";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "expirationTime";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "maxSeniorRepayment";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "validators";
                                                                    internalType: "struct IBaseLoan.OfferValidator[]";
                                                                    type: "tuple[]";
                                                                    components: readonly [{
                                                                        name: "validator";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "arguments";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                }];
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lenderOfferSignature";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }, {
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalReceiver";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }, {
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "borrowerOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "refinanceFromLoanExecutionData";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "trancheIndex";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_renegotiationOfferSignature";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "refinanceFull";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_renegotiationOffer";
                                                    internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "trancheIndex";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "aprBps";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }, {
                                                    name: "_loan";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "refinancePartial";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "";
                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "borrower";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "nftCollateralTokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "nftCollateralAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAddress";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "startTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "duration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "tranche";
                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                        type: "tuple[]";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "floor";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "accruedInterest";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_contract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "removeWhitelistedCallbackContract";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_repaymentData";
                                                    internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "data";
                                                        internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "callbackData";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }, {
                                                            name: "shouldDelegate";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "borrowerSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                }];
                                                name: "repayLoan";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "requestTransferOwner";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_delegate";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_collection";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "_tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "revokeDelegate";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newFlashActionContract";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "setFlashActionContract";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "__minLockPeriod";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "setMinLockPeriod";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "setProtocolFee";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "transferOwnership";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "newOwner";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "transferOwnership";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newDuration";
                                                    internalType: "uint48";
                                                    type: "uint48";
                                                }];
                                                name: "updateLiquidationAuctionDuration";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "__loanLiquidator";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "updateLiquidationContract";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newMinimum";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "updateMinImprovementApr";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "_newProtocolFee";
                                                    internalType: "struct WithProtocolFee.ProtocolFee";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "recipient";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "fraction";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                }];
                                                name: "updateProtocolFee";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "RevokeDelegate" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "MinLockPeriodUpdated" | "MinAprImprovementUpdated" | "MinBidLiquidationUpdated" | "TransferOwnerRequested" | "LoanRefinancedFromNewOffers")[]
                                                ? TFunctionName[number]
                                                : TFunctionName>)
                                            +
                                            +

                                            Type declaration

                                            +
                                              +
                                            • +
                                                +
                                              • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                                                    type: "constructor";
                                                    inputs: readonly [{
                                                        name: "loanLiquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "currencyManager";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "collectionManager";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "maxTranches";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "minLockPeriod";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "delegateRegistry";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "loanManagerRegistry";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "flashActionContract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "minWaitTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "AddressZeroError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "CancelledOrExecutedOfferError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "CollectionNotWhitelistedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "CurrencyNotWhitelistedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "ECDSAInvalidSignature";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "length";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "ECDSAInvalidSignatureLength";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "s";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }];
                                                    name: "ECDSAInvalidSignatureS";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "ExpiredOfferError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidAddressesError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_amount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "InvalidAmountError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidCallbackError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidCallerError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidCollateralIdError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidDurationError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidInputError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "InvalidLoanError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidMethodError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidParametersError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidRenegotiationOfferError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidSignatureError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidTrancheError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_liquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "LiquidatorOnlyError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "LoanExpiredError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "LoanLockedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "LoanNotDueError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_newMinOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "LowOfferIdError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_newMinRenegotiationOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "LowRenegotiationOfferIdError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "MaxCapacityExceededError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "MismatchError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "i";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "returndata";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "MulticallFailed";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "NFTNotReturnedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "NotStrictlyImprovedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_pendingProtocolFeeSetTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "TooEarlyError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "TooManyTranchesError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "TooSoonError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "minTimestamp";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "TrancheCannotBeRefinancedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "ZeroInterestError";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "AllOffersCancelled";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        type: "uint256";
                                                        indexed: false;
                                                        internalType: "uint256";
                                                    }, {
                                                        name: "delegate";
                                                        type: "address";
                                                        indexed: false;
                                                        internalType: "address";
                                                    }, {
                                                        name: "_rights";
                                                        type: "bytes32";
                                                        indexed: false;
                                                        internalType: "bytes32";
                                                    }, {
                                                        name: "value";
                                                        type: "bool";
                                                        indexed: false;
                                                        internalType: "bool";
                                                    }];
                                                    name: "Delegated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "newFlashActionContract";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "FlashActionContractUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "target";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "data";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                        indexed: false;
                                                    }];
                                                    name: "FlashActionExecuted";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "newDuration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LiquidationAuctionDurationUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "liquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "LiquidationContractUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "offerId";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                        indexed: false;
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanEmitted";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanForeclosed";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanLiquidated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "oldLoanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "newLoanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanRefinanced";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "newLoanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }, {
                                                        name: "offerIds";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                        indexed: false;
                                                    }, {
                                                        name: "totalFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanRefinancedFromNewOffers";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "totalRepayment";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanRepaid";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "liquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanSentToLiquidator";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "_minimum";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "MinAprImprovementUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "newMinBid";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "MinBidLiquidationUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "minLockPeriod";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "MinLockPeriodUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "OfferCancelled";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "newOwner";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }];
                                                    name: "OwnershipTransferred";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "fee";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }];
                                                    name: "ProtocolFeePendingUpdate";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "fee";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }];
                                                    name: "ProtocolFeeUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "RenegotiationOfferCancelled";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "delegate";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "collection";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "RevokeDelegate";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "newOwner";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "TransferOwnerRequested";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "contractAdded";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "WhitelistedCallbackContractAdded";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "contractRemoved";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "WhitelistedCallbackContractRemoved";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "DOMAIN_SEPARATOR";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "FEE_UPDATE_NOTICE";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "INITIAL_DOMAIN_SEPARATOR";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "MAX_AUCTION_DURATION";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint48";
                                                        type: "uint48";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "MIN_AUCTION_DURATION";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint48";
                                                        type: "uint48";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "MIN_BID_LIQUIDATION";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "MIN_WAIT_TIME";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "VERSION";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_renegotiationOffer";
                                                        internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "renegotiationId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "trancheIndex";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_renegotiationOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "addNewTranche";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_contract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "addWhitelistedCallbackContract";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "cancelAllOffers";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "cancelOffer";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "cancelRenegotiationOffer";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_delegate";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_rights";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }, {
                                                        name: "_value";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    name: "delegate";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanExecutionData";
                                                        internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "executionData";
                                                            internalType: "struct IMultiSourceLoan.ExecutionData";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "offerExecution";
                                                                internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "offer";
                                                                    internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                    type: "tuple";
                                                                    components: readonly [{
                                                                        name: "offerId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "fee";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "capacity";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "nftCollateralAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "nftCollateralTokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "principalAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "expirationTime";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "duration";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "maxSeniorRepayment";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "validators";
                                                                        internalType: "struct IBaseLoan.OfferValidator[]";
                                                                        type: "tuple[]";
                                                                        components: readonly [{
                                                                            name: "validator";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "arguments";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                    }];
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lenderOfferSignature";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "expirationTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalReceiver";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "callbackData";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }, {
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "borrowerOfferSignature";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }];
                                                    name: "emitLoan";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_target";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_data";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "executeFlashAction";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getCollectionManager";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getCurrencyManager";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getDelegateRegistry";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getFlashActionContract";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getLiquidationAuctionDuration";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint48";
                                                        type: "uint48";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getLiquidator";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "getLoanHash";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getLoanManagerRegistry";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "contract ILoanManagerRegistry";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getMaxTranches";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getMinImprovementApr";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getMinLockPeriod";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getPendingProtocolFee";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getPendingProtocolFeeSetTime";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getProtocolFee";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getTotalLoansIssued";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "getUsedCapacity";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "isOfferCancelled";
                                                    outputs: readonly [{
                                                        name: "notActive";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "renegotiationIf";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "isRenegotiationOfferCancelled";
                                                    outputs: readonly [{
                                                        name: "notActive";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_contract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "isWhitelistedCallbackContract";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    name: "liquidateLoan";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    name: "loanLiquidated";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "minOfferId";
                                                    outputs: readonly [{
                                                        name: "minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "data";
                                                        internalType: "bytes[]";
                                                        type: "bytes[]";
                                                    }];
                                                    name: "multicall";
                                                    outputs: readonly [{
                                                        name: "results";
                                                        internalType: "bytes[]";
                                                        type: "bytes[]";
                                                    }];
                                                    stateMutability: "payable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "name";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "string";
                                                        type: "string";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "onERC721Received";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes4";
                                                        type: "bytes4";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "owner";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "pendingOwner";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "pendingOwnerTime";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_loanExecutionData";
                                                        internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "executionData";
                                                            internalType: "struct IMultiSourceLoan.ExecutionData";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "offerExecution";
                                                                internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "offer";
                                                                    internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                    type: "tuple";
                                                                    components: readonly [{
                                                                        name: "offerId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "fee";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "capacity";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "nftCollateralAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "nftCollateralTokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "principalAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "expirationTime";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "duration";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "maxSeniorRepayment";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "validators";
                                                                        internalType: "struct IBaseLoan.OfferValidator[]";
                                                                        type: "tuple[]";
                                                                        components: readonly [{
                                                                            name: "validator";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "arguments";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                    }];
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lenderOfferSignature";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "expirationTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalReceiver";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "callbackData";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }, {
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "borrowerOfferSignature";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }];
                                                    name: "refinanceFromLoanExecutionData";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_renegotiationOffer";
                                                        internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "renegotiationId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "trancheIndex";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_renegotiationOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "refinanceFull";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_renegotiationOffer";
                                                        internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "renegotiationId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "trancheIndex";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    name: "refinancePartial";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_contract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "removeWhitelistedCallbackContract";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_repaymentData";
                                                        internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "data";
                                                            internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "callbackData";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }, {
                                                                name: "shouldDelegate";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                        }, {
                                                            name: "loan";
                                                            internalType: "struct IMultiSourceLoan.Loan";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "borrower";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "tranche";
                                                                internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "loanId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "floor";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "accruedInterest";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                name: "protocolFee";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "borrowerSignature";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }];
                                                    name: "repayLoan";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newOwner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "requestTransferOwner";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_delegate";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_collection";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "revokeDelegate";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newFlashActionContract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "setFlashActionContract";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "__minLockPeriod";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "setMinLockPeriod";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "setProtocolFee";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "transferOwnership";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "newOwner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "transferOwnership";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newDuration";
                                                        internalType: "uint48";
                                                        type: "uint48";
                                                    }];
                                                    name: "updateLiquidationAuctionDuration";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "__loanLiquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "updateLiquidationContract";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newMinimum";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "updateMinImprovementApr";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newProtocolFee";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    name: "updateProtocolFee";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "RevokeDelegate" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "MinLockPeriodUpdated" | "MinAprImprovementUpdated" | "MinBidLiquidationUpdated" | "TransferOwnerRequested" | "LoanRefinancedFromNewOffers")[]
                                                    ? TFunctionName[number]
                                                    : TFunctionName>
                                              • +
                                              • +
                                                +

                                                Type Parameters

                                                +
                                                  +
                                                • +

                                                  TFunctionName extends "OwnershipTransferred" | "AllOffersCancelled" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "RevokeDelegate" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "MinLockPeriodUpdated" | "MinAprImprovementUpdated" | "MinBidLiquidationUpdated" | "TransferOwnerRequested" | "LoanRefinancedFromNewOffers"

                                                +
                                                +

                                                Parameters

                                                +
                                                  +
                                                • +
                                                  eventName: TFunctionName
                                                • +
                                                • +
                                                  logs: Log<bigint, number, false>[]
                                                +

                                                Returns ParseEventLogsReturnType<readonly [{
                                                    type: "constructor";
                                                    inputs: readonly [{
                                                        name: "loanLiquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "protocolFee";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "currencyManager";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "collectionManager";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "maxTranches";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "minLockPeriod";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "delegateRegistry";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "loanManagerRegistry";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "flashActionContract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "minWaitTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "AddressZeroError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "CancelledOrExecutedOfferError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "CollectionNotWhitelistedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "CurrencyNotWhitelistedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "ECDSAInvalidSignature";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "length";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "ECDSAInvalidSignatureLength";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "s";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }];
                                                    name: "ECDSAInvalidSignatureS";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "ExpiredOfferError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidAddressesError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_amount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_principalAmount";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "InvalidAmountError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidCallbackError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidCallerError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidCollateralIdError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidDurationError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidInputError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "InvalidLoanError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidMethodError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidParametersError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidRenegotiationOfferError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidSignatureError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "InvalidTrancheError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_liquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "LiquidatorOnlyError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "LoanExpiredError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "LoanLockedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_expirationTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "LoanNotDueError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_newMinOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "LowOfferIdError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_newMinRenegotiationOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "LowRenegotiationOfferIdError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "MaxCapacityExceededError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "MismatchError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "i";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "returndata";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "MulticallFailed";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "NFTNotReturnedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "NotStrictlyImprovedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "_pendingProtocolFeeSetTime";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "TooEarlyError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "TooManyTranchesError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "TooSoonError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [{
                                                        name: "minTimestamp";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "TrancheCannotBeRefinancedError";
                                                }, {
                                                    type: "error";
                                                    inputs: readonly [];
                                                    name: "ZeroInterestError";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "AllOffersCancelled";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        type: "uint256";
                                                        indexed: false;
                                                        internalType: "uint256";
                                                    }, {
                                                        name: "delegate";
                                                        type: "address";
                                                        indexed: false;
                                                        internalType: "address";
                                                    }, {
                                                        name: "_rights";
                                                        type: "bytes32";
                                                        indexed: false;
                                                        internalType: "bytes32";
                                                    }, {
                                                        name: "value";
                                                        type: "bool";
                                                        indexed: false;
                                                        internalType: "bool";
                                                    }];
                                                    name: "Delegated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "newFlashActionContract";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "FlashActionContractUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "target";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "data";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                        indexed: false;
                                                    }];
                                                    name: "FlashActionExecuted";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "newDuration";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LiquidationAuctionDurationUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "liquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "LiquidationContractUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "offerId";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                        indexed: false;
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanEmitted";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanForeclosed";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanLiquidated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "oldLoanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "newLoanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanRefinanced";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "newLoanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }, {
                                                        name: "offerIds";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                        indexed: false;
                                                    }, {
                                                        name: "totalFee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanRefinancedFromNewOffers";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "totalRepayment";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "fee";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanRepaid";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }, {
                                                        name: "liquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "LoanSentToLiquidator";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "_minimum";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "MinAprImprovementUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "newMinBid";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "MinBidLiquidationUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "minLockPeriod";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "MinLockPeriodUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "OfferCancelled";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "newOwner";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }];
                                                    name: "OwnershipTransferred";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "fee";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }];
                                                    name: "ProtocolFeePendingUpdate";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "fee";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        indexed: false;
                                                    }];
                                                    name: "ProtocolFeeUpdated";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "lender";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "RenegotiationOfferCancelled";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "delegate";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "collection";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }, {
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: false;
                                                    }];
                                                    name: "RevokeDelegate";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "newOwner";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "TransferOwnerRequested";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "contractAdded";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "WhitelistedCallbackContractAdded";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "contractRemoved";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: false;
                                                    }];
                                                    name: "WhitelistedCallbackContractRemoved";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "DOMAIN_SEPARATOR";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "FEE_UPDATE_NOTICE";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "INITIAL_DOMAIN_SEPARATOR";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "MAX_AUCTION_DURATION";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint48";
                                                        type: "uint48";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "MIN_AUCTION_DURATION";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint48";
                                                        type: "uint48";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "MIN_BID_LIQUIDATION";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "MIN_WAIT_TIME";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "VERSION";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_renegotiationOffer";
                                                        internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "renegotiationId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "trancheIndex";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_renegotiationOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "addNewTranche";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_contract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "addWhitelistedCallbackContract";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "cancelAllOffers";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "cancelOffer";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_renegotiationId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "cancelRenegotiationOffer";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_delegate";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_rights";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }, {
                                                        name: "_value";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    name: "delegate";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanExecutionData";
                                                        internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "executionData";
                                                            internalType: "struct IMultiSourceLoan.ExecutionData";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "offerExecution";
                                                                internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "offer";
                                                                    internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                    type: "tuple";
                                                                    components: readonly [{
                                                                        name: "offerId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "fee";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "capacity";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "nftCollateralAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "nftCollateralTokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "principalAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "expirationTime";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "duration";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "maxSeniorRepayment";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "validators";
                                                                        internalType: "struct IBaseLoan.OfferValidator[]";
                                                                        type: "tuple[]";
                                                                        components: readonly [{
                                                                            name: "validator";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "arguments";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                    }];
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lenderOfferSignature";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "expirationTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalReceiver";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "callbackData";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }, {
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "borrowerOfferSignature";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }];
                                                    name: "emitLoan";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_target";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_data";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "executeFlashAction";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getCollectionManager";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getCurrencyManager";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getDelegateRegistry";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getFlashActionContract";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getLiquidationAuctionDuration";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint48";
                                                        type: "uint48";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getLiquidator";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "getLoanHash";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes32";
                                                        type: "bytes32";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getLoanManagerRegistry";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "contract ILoanManagerRegistry";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getMaxTranches";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getMinImprovementApr";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getMinLockPeriod";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getPendingProtocolFee";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getPendingProtocolFeeSetTime";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getProtocolFee";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "getTotalLoansIssued";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_lender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "getUsedCapacity";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "offerId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "isOfferCancelled";
                                                    outputs: readonly [{
                                                        name: "notActive";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "renegotiationIf";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "isRenegotiationOfferCancelled";
                                                    outputs: readonly [{
                                                        name: "notActive";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_contract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "isWhitelistedCallbackContract";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    name: "liquidateLoan";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    name: "loanLiquidated";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "minOfferId";
                                                    outputs: readonly [{
                                                        name: "minOfferId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "data";
                                                        internalType: "bytes[]";
                                                        type: "bytes[]";
                                                    }];
                                                    name: "multicall";
                                                    outputs: readonly [{
                                                        name: "results";
                                                        internalType: "bytes[]";
                                                        type: "bytes[]";
                                                    }];
                                                    stateMutability: "payable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "name";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "string";
                                                        type: "string";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "onERC721Received";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bytes4";
                                                        type: "bytes4";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "owner";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "pendingOwner";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "pendingOwnerTime";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_loanId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_loanExecutionData";
                                                        internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "executionData";
                                                            internalType: "struct IMultiSourceLoan.ExecutionData";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "offerExecution";
                                                                internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "offer";
                                                                    internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                    type: "tuple";
                                                                    components: readonly [{
                                                                        name: "offerId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "fee";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "capacity";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "nftCollateralAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "nftCollateralTokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "principalAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "expirationTime";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "duration";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "maxSeniorRepayment";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "validators";
                                                                        internalType: "struct IBaseLoan.OfferValidator[]";
                                                                        type: "tuple[]";
                                                                        components: readonly [{
                                                                            name: "validator";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "arguments";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                    }];
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lenderOfferSignature";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "expirationTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalReceiver";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "callbackData";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                        }, {
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "borrowerOfferSignature";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }];
                                                    name: "refinanceFromLoanExecutionData";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_renegotiationOffer";
                                                        internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "renegotiationId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "trancheIndex";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_renegotiationOfferSignature";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "refinanceFull";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_renegotiationOffer";
                                                        internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "renegotiationId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "loanId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "lender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "trancheIndex";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "aprBps";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "expirationTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_loan";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    name: "refinancePartial";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            type: "tuple[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_contract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "removeWhitelistedCallbackContract";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_repaymentData";
                                                        internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "data";
                                                            internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "callbackData";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }, {
                                                                name: "shouldDelegate";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                        }, {
                                                            name: "loan";
                                                            internalType: "struct IMultiSourceLoan.Loan";
                                                            type: "tuple";
                                                            components: readonly [{
                                                                name: "borrower";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAddress";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "tranche";
                                                                internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                type: "tuple[]";
                                                                components: readonly [{
                                                                    name: "loanId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "floor";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "accruedInterest";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                name: "protocolFee";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            name: "borrowerSignature";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                    }];
                                                    name: "repayLoan";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newOwner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "requestTransferOwner";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_delegate";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_collection";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "_tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "revokeDelegate";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newFlashActionContract";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "setFlashActionContract";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "__minLockPeriod";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "setMinLockPeriod";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "setProtocolFee";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "transferOwnership";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "newOwner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "transferOwnership";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newDuration";
                                                        internalType: "uint48";
                                                        type: "uint48";
                                                    }];
                                                    name: "updateLiquidationAuctionDuration";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "__loanLiquidator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "updateLiquidationContract";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newMinimum";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "updateMinImprovementApr";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "_newProtocolFee";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "fraction";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }];
                                                    name: "updateProtocolFee";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "RevokeDelegate" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "MinLockPeriodUpdated" | "MinAprImprovementUpdated" | "MinBidLiquidationUpdated" | "TransferOwnerRequested" | "LoanRefinancedFromNewOffers")[]
                                                    ? TFunctionName[number]
                                                    : TFunctionName>

                                            +
                                            + +
                                            +
                                            \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.OldERC721Wrapper.html b/docs/0.17.2/classes/Internal.OldERC721Wrapper.html new file mode 100644 index 00000000..99b71da4 --- /dev/null +++ b/docs/0.17.2/classes/Internal.OldERC721Wrapper.html @@ -0,0 +1,510 @@ +OldERC721Wrapper | Gondi JS SDK - v0.17.2
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            + +

                                            Class OldERC721Wrapper

                                            +
                                            +

                                            Hierarchy

                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +

                                            Constructors

                                            +
                                            + +
                                            +
                                            +

                                            Methods

                                            +
                                            + +
                                              + +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                __namedParameters: {
                                                    tokenId: bigint;
                                                }
                                                +
                                                  +
                                                • +
                                                  tokenId: bigint
                                              +

                                              Returns Promise<{
                                                  txHash: `0x${string}`;
                                                  waitMined: (() => Promise<TransactionReceipt>);
                                              }>

                                            +
                                            + +
                                              + +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                tokenId: bigint
                                              +

                                              Returns Promise<{
                                                  txHash: `0x${string}`;
                                                  waitMined: (() => Promise<TransactionReceipt>);
                                              }>

                                            +
                                            + +
                                              + +
                                            • +
                                              +

                                              Parameters

                                              +
                                                +
                                              • +
                                                data: `0x${string}`
                                              +

                                              Returns Promise<{
                                                  txHash: `0x${string}`;
                                                  waitTxInBlock: (() => Promise<TransactionReceipt>);
                                              }>

                                            +
                                            +

                                            Properties

                                            +
                                            + +
                                            abi: readonly [{
                                                type: "constructor";
                                                inputs: readonly [{
                                                    name: "name";
                                                    internalType: "string";
                                                    type: "string";
                                                }, {
                                                    name: "symbol";
                                                    internalType: "string";
                                                    type: "string";
                                                }, {
                                                    name: "_wrapped";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "spender";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "id";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "approve";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "owner";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "balanceOf";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "getApproved";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "isApprovedForAll";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "name";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "string";
                                                    type: "string";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "id";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "ownerOf";
                                                outputs: readonly [{
                                                    name: "owner";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "from";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "to";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "id";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "safeTransferFrom";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "from";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "to";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "id";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }, {
                                                    name: "data";
                                                    internalType: "bytes";
                                                    type: "bytes";
                                                }];
                                                name: "safeTransferFrom";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "operator";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "approved";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                name: "setApprovalForAll";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "user";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "stashAddress";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "stashFactory";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "contract Stash";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "interfaceId";
                                                    internalType: "bytes4";
                                                    type: "bytes4";
                                                }];
                                                name: "supportsInterface";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "bool";
                                                    type: "bool";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "symbol";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "string";
                                                    type: "string";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "tokenURI";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "string";
                                                    type: "string";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "owner";
                                                    internalType: "address";
                                                    type: "address";
                                                }];
                                                name: "tokensOfOwner";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "totalSupply";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "from";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "to";
                                                    internalType: "address";
                                                    type: "address";
                                                }, {
                                                    name: "id";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "transferFrom";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "unwrap";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "tokenIndexes";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }];
                                                name: "unwrapBatch";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "tokenId";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                }];
                                                name: "wrap";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [{
                                                    name: "tokenIndexes";
                                                    internalType: "uint256[]";
                                                    type: "uint256[]";
                                                }];
                                                name: "wrapBatch";
                                                outputs: readonly [];
                                                stateMutability: "nonpayable";
                                            }, {
                                                type: "function";
                                                inputs: readonly [];
                                                name: "wrapped";
                                                outputs: readonly [{
                                                    name: "";
                                                    internalType: "contract IOldERC721";
                                                    type: "address";
                                                }];
                                                stateMutability: "view";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "owner";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "spender";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "id";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: true;
                                                }];
                                                name: "Approval";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "owner";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "operator";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "approved";
                                                    internalType: "bool";
                                                    type: "bool";
                                                    indexed: false;
                                                }];
                                                name: "ApprovalForAll";
                                            }, {
                                                type: "event";
                                                anonymous: false;
                                                inputs: readonly [{
                                                    name: "from";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "to";
                                                    internalType: "address";
                                                    type: "address";
                                                    indexed: true;
                                                }, {
                                                    name: "id";
                                                    internalType: "uint256";
                                                    type: "uint256";
                                                    indexed: true;
                                                }];
                                                name: "Transfer";
                                            }]
                                            +
                                            + +
                                            address: `0x${string}`
                                            +
                                            + +
                                            bcClient: {}
                                            +
                                            +

                                            Type declaration

                                            +
                                              +
                                              + +
                                              wallet: {}
                                              +
                                              +

                                              Type declaration

                                              +
                                                +
                                                + +
                                                contract: GetContractReturnType<readonly [{
                                                    type: "constructor";
                                                    inputs: readonly [{
                                                        name: "name";
                                                        internalType: "string";
                                                        type: "string";
                                                    }, {
                                                        name: "symbol";
                                                        internalType: "string";
                                                        type: "string";
                                                    }, {
                                                        name: "_wrapped";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "spender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "approve";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "balanceOf";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "getApproved";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "isApprovedForAll";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "name";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "string";
                                                        type: "string";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "ownerOf";
                                                    outputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "from";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "to";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "safeTransferFrom";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "from";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "to";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "data";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "safeTransferFrom";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "operator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "approved";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    name: "setApprovalForAll";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "stashAddress";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "stashFactory";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "contract Stash";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "interfaceId";
                                                        internalType: "bytes4";
                                                        type: "bytes4";
                                                    }];
                                                    name: "supportsInterface";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "symbol";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "string";
                                                        type: "string";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "tokenURI";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "string";
                                                        type: "string";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "tokensOfOwner";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "totalSupply";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "from";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "to";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "transferFrom";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "unwrap";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenIndexes";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }];
                                                    name: "unwrapBatch";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "wrap";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenIndexes";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }];
                                                    name: "wrapBatch";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "wrapped";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "contract IOldERC721";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "spender";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: true;
                                                    }];
                                                    name: "Approval";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "operator";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "approved";
                                                        internalType: "bool";
                                                        type: "bool";
                                                        indexed: false;
                                                    }];
                                                    name: "ApprovalForAll";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "from";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "to";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: true;
                                                    }];
                                                    name: "Transfer";
                                                }], {} | {}>
                                                +
                                                + +
                                                safeContractWrite: {
                                                    approve: ((args, options?) => Promise<`0x${string}`>);
                                                    transferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                    safeTransferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                    setApprovalForAll: ((args, options?) => Promise<`0x${string}`>);
                                                    unwrap: ((args, options?) => Promise<`0x${string}`>);
                                                    unwrapBatch: ((args, options?) => Promise<`0x${string}`>);
                                                    wrap: ((args, options?) => Promise<`0x${string}`>);
                                                    wrapBatch: ((args, options?) => Promise<`0x${string}`>);
                                                }
                                                +
                                                +

                                                Type declaration

                                                +
                                                  +
                                                • +
                                                  approve: ((args, options?) => Promise<`0x${string}`>)
                                                  +
                                                    +
                                                  • +
                                                      +
                                                    • (args, options?): Promise<`0x${string}`>
                                                    • +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                        +
                                                      • +
                                                        args: readonly [`0x${string}`, bigint]
                                                      • +
                                                      • +
                                                        Optional options: {
                                                            value?: bigint;
                                                        }
                                                        +
                                                          +
                                                        • +
                                                          Optional value?: bigint
                                                      +

                                                      Returns Promise<`0x${string}`>

                                                • +
                                                • +
                                                  transferFrom: ((args, options?) => Promise<`0x${string}`>)
                                                  +
                                                    +
                                                  • +
                                                      +
                                                    • (args, options?): Promise<`0x${string}`>
                                                    • +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                        +
                                                      • +
                                                        args: readonly [`0x${string}`, `0x${string}`, bigint]
                                                      • +
                                                      • +
                                                        Optional options: {
                                                            value?: bigint;
                                                        }
                                                        +
                                                          +
                                                        • +
                                                          Optional value?: bigint
                                                      +

                                                      Returns Promise<`0x${string}`>

                                                • +
                                                • +
                                                  safeTransferFrom: ((args, options?) => Promise<`0x${string}`>)
                                                  +
                                                    +
                                                  • +
                                                      +
                                                    • (args, options?): Promise<`0x${string}`>
                                                    • +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                        +
                                                      • +
                                                        args: (undefined | readonly [`0x${string}`, `0x${string}`, bigint] | readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]) & Widen<readonly [`0x${string}`, `0x${string}`, bigint] | readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]>
                                                      • +
                                                      • +
                                                        Optional options: {
                                                            value?: bigint;
                                                        }
                                                        +
                                                          +
                                                        • +
                                                          Optional value?: bigint
                                                      +

                                                      Returns Promise<`0x${string}`>

                                                • +
                                                • +
                                                  setApprovalForAll: ((args, options?) => Promise<`0x${string}`>)
                                                  +
                                                    +
                                                  • +
                                                      +
                                                    • (args, options?): Promise<`0x${string}`>
                                                    • +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                        +
                                                      • +
                                                        args: readonly [`0x${string}`, Widen<boolean>] | readonly [`0x${string}`, boolean] & readonly [`0x${string}`, Widen<boolean>]
                                                      • +
                                                      • +
                                                        Optional options: {
                                                            value?: bigint;
                                                        }
                                                        +
                                                          +
                                                        • +
                                                          Optional value?: bigint
                                                      +

                                                      Returns Promise<`0x${string}`>

                                                • +
                                                • +
                                                  unwrap: ((args, options?) => Promise<`0x${string}`>)
                                                  +
                                                    +
                                                  • +
                                                      +
                                                    • (args, options?): Promise<`0x${string}`>
                                                    • +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                        +
                                                      • +
                                                        args: readonly [bigint]
                                                      • +
                                                      • +
                                                        Optional options: {
                                                            value?: bigint;
                                                        }
                                                        +
                                                          +
                                                        • +
                                                          Optional value?: bigint
                                                      +

                                                      Returns Promise<`0x${string}`>

                                                • +
                                                • +
                                                  unwrapBatch: ((args, options?) => Promise<`0x${string}`>)
                                                  +
                                                    +
                                                  • +
                                                      +
                                                    • (args, options?): Promise<`0x${string}`>
                                                    • +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                        +
                                                      • +
                                                        args: readonly [readonly bigint[]] | readonly [readonly bigint[]] & readonly [readonly bigint[]]
                                                      • +
                                                      • +
                                                        Optional options: {
                                                            value?: bigint;
                                                        }
                                                        +
                                                          +
                                                        • +
                                                          Optional value?: bigint
                                                      +

                                                      Returns Promise<`0x${string}`>

                                                • +
                                                • +
                                                  wrap: ((args, options?) => Promise<`0x${string}`>)
                                                  +
                                                    +
                                                  • +
                                                      +
                                                    • (args, options?): Promise<`0x${string}`>
                                                    • +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                        +
                                                      • +
                                                        args: readonly [bigint]
                                                      • +
                                                      • +
                                                        Optional options: {
                                                            value?: bigint;
                                                        }
                                                        +
                                                          +
                                                        • +
                                                          Optional value?: bigint
                                                      +

                                                      Returns Promise<`0x${string}`>

                                                • +
                                                • +
                                                  wrapBatch: ((args, options?) => Promise<`0x${string}`>)
                                                  +
                                                    +
                                                  • +
                                                      +
                                                    • (args, options?): Promise<`0x${string}`>
                                                    • +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                        +
                                                      • +
                                                        args: readonly [readonly bigint[]] | readonly [readonly bigint[]] & readonly [readonly bigint[]]
                                                      • +
                                                      • +
                                                        Optional options: {
                                                            value?: bigint;
                                                        }
                                                        +
                                                          +
                                                        • +
                                                          Optional value?: bigint
                                                      +

                                                      Returns Promise<`0x${string}`>

                                                +
                                                + +
                                                parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                    type: "constructor";
                                                    inputs: readonly [{
                                                        name: "name";
                                                        internalType: "string";
                                                        type: "string";
                                                    }, {
                                                        name: "symbol";
                                                        internalType: "string";
                                                        type: "string";
                                                    }, {
                                                        name: "_wrapped";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "spender";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "approve";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "balanceOf";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "getApproved";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "isApprovedForAll";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "name";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "string";
                                                        type: "string";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "ownerOf";
                                                    outputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "from";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "to";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "safeTransferFrom";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "from";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "to";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }, {
                                                        name: "data";
                                                        internalType: "bytes";
                                                        type: "bytes";
                                                    }];
                                                    name: "safeTransferFrom";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "operator";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "approved";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    name: "setApprovalForAll";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "user";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "stashAddress";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "stashFactory";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "contract Stash";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "interfaceId";
                                                        internalType: "bytes4";
                                                        type: "bytes4";
                                                    }];
                                                    name: "supportsInterface";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "bool";
                                                        type: "bool";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "symbol";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "string";
                                                        type: "string";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "tokenURI";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "string";
                                                        type: "string";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                    }];
                                                    name: "tokensOfOwner";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "totalSupply";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "from";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "to";
                                                        internalType: "address";
                                                        type: "address";
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "transferFrom";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "unwrap";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenIndexes";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }];
                                                    name: "unwrapBatch";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenId";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                    }];
                                                    name: "wrap";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [{
                                                        name: "tokenIndexes";
                                                        internalType: "uint256[]";
                                                        type: "uint256[]";
                                                    }];
                                                    name: "wrapBatch";
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    inputs: readonly [];
                                                    name: "wrapped";
                                                    outputs: readonly [{
                                                        name: "";
                                                        internalType: "contract IOldERC721";
                                                        type: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "spender";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: true;
                                                    }];
                                                    name: "Approval";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "owner";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "operator";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "approved";
                                                        internalType: "bool";
                                                        type: "bool";
                                                        indexed: false;
                                                    }];
                                                    name: "ApprovalForAll";
                                                }, {
                                                    type: "event";
                                                    anonymous: false;
                                                    inputs: readonly [{
                                                        name: "from";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "to";
                                                        internalType: "address";
                                                        type: "address";
                                                        indexed: true;
                                                    }, {
                                                        name: "id";
                                                        internalType: "uint256";
                                                        type: "uint256";
                                                        indexed: true;
                                                    }];
                                                    name: "Transfer";
                                                }], TFunctionName, true, TFunctionName extends ("Approval" | "Transfer" | "ApprovalForAll")[]
                                                    ? TFunctionName[number]
                                                    : TFunctionName>)
                                                +
                                                +

                                                Type declaration

                                                +
                                                  +
                                                • +
                                                    +
                                                  • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                                                        type: "constructor";
                                                        inputs: readonly [{
                                                            name: "name";
                                                            internalType: "string";
                                                            type: "string";
                                                        }, {
                                                            name: "symbol";
                                                            internalType: "string";
                                                            type: "string";
                                                        }, {
                                                            name: "_wrapped";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "spender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "approve";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "balanceOf";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "getApproved";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "isApprovedForAll";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "name";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "string";
                                                            type: "string";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "ownerOf";
                                                        outputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "safeTransferFrom";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "data";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                        name: "safeTransferFrom";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "operator";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "approved";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                        name: "setApprovalForAll";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "user";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "stashAddress";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "stashFactory";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "contract Stash";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "interfaceId";
                                                            internalType: "bytes4";
                                                            type: "bytes4";
                                                        }];
                                                        name: "supportsInterface";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "symbol";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "string";
                                                            type: "string";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "tokenURI";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "string";
                                                            type: "string";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "tokensOfOwner";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "totalSupply";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "transferFrom";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "unwrap";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenIndexes";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }];
                                                        name: "unwrapBatch";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "wrap";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenIndexes";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }];
                                                        name: "wrapBatch";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "wrapped";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "contract IOldERC721";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "spender";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: true;
                                                        }];
                                                        name: "Approval";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "operator";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "approved";
                                                            internalType: "bool";
                                                            type: "bool";
                                                            indexed: false;
                                                        }];
                                                        name: "ApprovalForAll";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: true;
                                                        }];
                                                        name: "Transfer";
                                                    }], TFunctionName, true, TFunctionName extends ("Approval" | "Transfer" | "ApprovalForAll")[]
                                                        ? TFunctionName[number]
                                                        : TFunctionName>
                                                  • +
                                                  • +
                                                    +

                                                    Type Parameters

                                                    +
                                                      +
                                                    • +

                                                      TFunctionName extends "Approval" | "Transfer" | "ApprovalForAll"

                                                    +
                                                    +

                                                    Parameters

                                                    +
                                                      +
                                                    • +
                                                      eventName: TFunctionName
                                                    • +
                                                    • +
                                                      logs: Log<bigint, number, false>[]
                                                    +

                                                    Returns ParseEventLogsReturnType<readonly [{
                                                        type: "constructor";
                                                        inputs: readonly [{
                                                            name: "name";
                                                            internalType: "string";
                                                            type: "string";
                                                        }, {
                                                            name: "symbol";
                                                            internalType: "string";
                                                            type: "string";
                                                        }, {
                                                            name: "_wrapped";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "spender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "approve";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "balanceOf";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "getApproved";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "isApprovedForAll";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "name";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "string";
                                                            type: "string";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "ownerOf";
                                                        outputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "safeTransferFrom";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "data";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                        name: "safeTransferFrom";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "operator";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "approved";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                        name: "setApprovalForAll";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "user";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "stashAddress";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "stashFactory";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "contract Stash";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "interfaceId";
                                                            internalType: "bytes4";
                                                            type: "bytes4";
                                                        }];
                                                        name: "supportsInterface";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "symbol";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "string";
                                                            type: "string";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "tokenURI";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "string";
                                                            type: "string";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "tokensOfOwner";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "totalSupply";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "transferFrom";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "unwrap";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenIndexes";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }];
                                                        name: "unwrapBatch";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "wrap";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "tokenIndexes";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }];
                                                        name: "wrapBatch";
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "wrapped";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "contract IOldERC721";
                                                            type: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "spender";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: true;
                                                        }];
                                                        name: "Approval";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "operator";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "approved";
                                                            internalType: "bool";
                                                            type: "bool";
                                                            indexed: false;
                                                        }];
                                                        name: "ApprovalForAll";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: true;
                                                        }];
                                                        name: "Transfer";
                                                    }], TFunctionName, true, TFunctionName extends ("Approval" | "Transfer" | "ApprovalForAll")[]
                                                        ? TFunctionName[number]
                                                        : TFunctionName>

                                                +
                                                + +
                                                +
                                                \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.PurchaseBundler.html b/docs/0.17.2/classes/Internal.PurchaseBundler.html new file mode 100644 index 00000000..224962d7 --- /dev/null +++ b/docs/0.17.2/classes/Internal.PurchaseBundler.html @@ -0,0 +1,630 @@ +PurchaseBundler | Gondi JS SDK - v0.17.2
                                                +
                                                + +
                                                +
                                                +
                                                +
                                                + +

                                                Class PurchaseBundler

                                                +
                                                +

                                                Hierarchy

                                                +
                                                +
                                                +
                                                +
                                                + +
                                                +
                                                +

                                                Constructors

                                                +
                                                + +
                                                +
                                                +

                                                Methods

                                                +
                                                + +
                                                  + +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    __namedParameters: {
                                                        repaymentCalldata: `0x${string}`;
                                                        price: bigint;
                                                    }
                                                    +
                                                      +
                                                    • +
                                                      repaymentCalldata: `0x${string}`
                                                    • +
                                                    • +
                                                      price: bigint
                                                  +

                                                  Returns Promise<{
                                                      txHash: `0x${string}`;
                                                      waitTxInBlock: (() => Promise<TransactionReceipt>);
                                                  }>

                                                +
                                                + +
                                                  + +
                                                • +
                                                  +

                                                  Parameters

                                                  +
                                                    +
                                                  • +
                                                    data: `0x${string}`
                                                  +

                                                  Returns Promise<{
                                                      txHash: `0x${string}`;
                                                      waitTxInBlock: (() => Promise<TransactionReceipt>);
                                                  }>

                                                +
                                                +

                                                Properties

                                                +
                                                + +
                                                EXECUTION_INFO: {
                                                    name: "executionInfo";
                                                    type: "tuple";
                                                    components: readonly [{
                                                        name: "reservoirExecutionInfo";
                                                        type: "tuple";
                                                        components: readonly [{
                                                            name: "module";
                                                            type: "address";
                                                        }, {
                                                            name: "data";
                                                            type: "bytes";
                                                        }, {
                                                            name: "value";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        name: "contractMustBeOwner";
                                                        type: "bool";
                                                    }];
                                                } = ...
                                                +
                                                +

                                                Type declaration

                                                +
                                                  +
                                                • +
                                                  Readonly name: "executionInfo"
                                                • +
                                                • +
                                                  Readonly type: "tuple"
                                                • +
                                                • +
                                                  Readonly components: readonly [{
                                                      name: "reservoirExecutionInfo";
                                                      type: "tuple";
                                                      components: readonly [{
                                                          name: "module";
                                                          type: "address";
                                                      }, {
                                                          name: "data";
                                                          type: "bytes";
                                                      }, {
                                                          name: "value";
                                                          type: "uint256";
                                                      }];
                                                  }, {
                                                      name: "contractMustBeOwner";
                                                      type: "bool";
                                                  }]
                                                +
                                                + +
                                                msl: MslV6 | MslV5
                                                +
                                                + +
                                                abi: readonly [{
                                                    type: "constructor";
                                                    inputs: readonly [{
                                                        name: "_multiSourceLoanAddress";
                                                        type: "address";
                                                        internalType: "address";
                                                    }, {
                                                        name: "_marketplaceContracts";
                                                        type: "address";
                                                        internalType: "address";
                                                    }, {
                                                        name: "_wethAddress";
                                                        type: "address";
                                                        internalType: "address payable";
                                                    }, {
                                                        name: "_punkMarketAddress";
                                                        type: "address";
                                                        internalType: "address payable";
                                                    }, {
                                                        name: "_wrappedPunkAddress";
                                                        type: "address";
                                                        internalType: "address payable";
                                                    }, {
                                                        name: "__taxes";
                                                        type: "tuple";
                                                        internalType: "struct IPurchaseBundler.Taxes";
                                                        components: readonly [{
                                                            name: "buyTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }, {
                                                            name: "sellTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }];
                                                    }, {
                                                        name: "_minWaitTime";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }, {
                                                        name: "__protocolFee";
                                                        type: "tuple";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "fraction";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "fallback";
                                                    stateMutability: "payable";
                                                }, {
                                                    type: "receive";
                                                    stateMutability: "payable";
                                                }, {
                                                    type: "function";
                                                    name: "FEE_UPDATE_NOTICE";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "MIN_WAIT_TIME";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "TAX_UPDATE_NOTICE";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "afterNFTTransfer";
                                                    inputs: readonly [{
                                                        name: "_loan";
                                                        type: "tuple";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            type: "tuple[]";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_executionData";
                                                        type: "bytes";
                                                        internalType: "bytes";
                                                    }];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "bytes4";
                                                        internalType: "bytes4";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "afterPrincipalTransfer";
                                                    inputs: readonly [{
                                                        name: "_loan";
                                                        type: "tuple";
                                                        internalType: "struct IMultiSourceLoan.Loan";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            type: "tuple[]";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }, {
                                                        name: "_fee";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }, {
                                                        name: "_executionData";
                                                        type: "bytes";
                                                        internalType: "bytes";
                                                    }];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "bytes4";
                                                        internalType: "bytes4";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "buy";
                                                    inputs: readonly [{
                                                        name: "_executionData";
                                                        type: "bytes[]";
                                                        internalType: "bytes[]";
                                                    }];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "uint256[]";
                                                        internalType: "uint256[]";
                                                    }, {
                                                        name: "";
                                                        type: "tuple[]";
                                                        internalType: "struct IMultiSourceLoan.Loan[]";
                                                        components: readonly [{
                                                            name: "borrower";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "nftCollateralTokenId";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "nftCollateralAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "principalAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "principalAmount";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "startTime";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "duration";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "tranche";
                                                            type: "tuple[]";
                                                            internalType: "struct IMultiSourceLoan.Tranche[]";
                                                            components: readonly [{
                                                                name: "loanId";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "floor";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "principalAmount";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "lender";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "accruedInterest";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "aprBps";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }, {
                                                            name: "protocolFee";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "payable";
                                                }, {
                                                    type: "function";
                                                    name: "executeSell";
                                                    inputs: readonly [{
                                                        name: "_currencies";
                                                        type: "address[]";
                                                        internalType: "contract ERC20[]";
                                                    }, {
                                                        name: "_currencyAmounts";
                                                        type: "uint256[]";
                                                        internalType: "uint256[]";
                                                    }, {
                                                        name: "_collections";
                                                        type: "address[]";
                                                        internalType: "contract ERC721[]";
                                                    }, {
                                                        name: "_tokenIds";
                                                        type: "uint256[]";
                                                        internalType: "uint256[]";
                                                    }, {
                                                        name: "_marketPlace";
                                                        type: "address";
                                                        internalType: "address";
                                                    }, {
                                                        name: "_executionData";
                                                        type: "bytes[]";
                                                        internalType: "bytes[]";
                                                    }];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "finalUpdateMultiSourceLoanAddress";
                                                    inputs: readonly [{
                                                        name: "_newAddress";
                                                        type: "address";
                                                        internalType: "address";
                                                    }];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "getMultiSourceLoanAddress";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "address";
                                                        internalType: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "getPendingProtocolFee";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "tuple";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "fraction";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "getPendingProtocolFeeSetTime";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "getPendingTaxes";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "tuple";
                                                        internalType: "struct IPurchaseBundler.Taxes";
                                                        components: readonly [{
                                                            name: "buyTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }, {
                                                            name: "sellTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }];
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "getPendingTaxesSetTime";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "getProtocolFee";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "tuple";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "fraction";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "getTaxes";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "tuple";
                                                        internalType: "struct IPurchaseBundler.Taxes";
                                                        components: readonly [{
                                                            name: "buyTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }, {
                                                            name: "sellTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }];
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "onERC721Received";
                                                    inputs: readonly [{
                                                        name: "";
                                                        type: "address";
                                                        internalType: "address";
                                                    }, {
                                                        name: "";
                                                        type: "address";
                                                        internalType: "address";
                                                    }, {
                                                        name: "";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }, {
                                                        name: "";
                                                        type: "bytes";
                                                        internalType: "bytes";
                                                    }];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "bytes4";
                                                        internalType: "bytes4";
                                                    }];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "owner";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "address";
                                                        internalType: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "pendingOwner";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "address";
                                                        internalType: "address";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "pendingOwnerTime";
                                                    inputs: readonly [];
                                                    outputs: readonly [{
                                                        name: "";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }];
                                                    stateMutability: "view";
                                                }, {
                                                    type: "function";
                                                    name: "requestTransferOwner";
                                                    inputs: readonly [{
                                                        name: "_newOwner";
                                                        type: "address";
                                                        internalType: "address";
                                                    }];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "sell";
                                                    inputs: readonly [{
                                                        name: "_executionData";
                                                        type: "bytes[]";
                                                        internalType: "bytes[]";
                                                    }];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "setProtocolFee";
                                                    inputs: readonly [];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "setTaxes";
                                                    inputs: readonly [];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "transferOwnership";
                                                    inputs: readonly [];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "transferOwnership";
                                                    inputs: readonly [{
                                                        name: "newOwner";
                                                        type: "address";
                                                        internalType: "address";
                                                    }];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "updateMultiSourceLoanAddressFirst";
                                                    inputs: readonly [{
                                                        name: "_newAddress";
                                                        type: "address";
                                                        internalType: "address";
                                                    }];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "updateProtocolFee";
                                                    inputs: readonly [{
                                                        name: "_newProtocolFee";
                                                        type: "tuple";
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "fraction";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "function";
                                                    name: "updateTaxes";
                                                    inputs: readonly [{
                                                        name: "_newTaxes";
                                                        type: "tuple";
                                                        internalType: "struct IPurchaseBundler.Taxes";
                                                        components: readonly [{
                                                            name: "buyTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }, {
                                                            name: "sellTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }];
                                                    }];
                                                    outputs: readonly [];
                                                    stateMutability: "nonpayable";
                                                }, {
                                                    type: "event";
                                                    name: "BNPLLoansStarted";
                                                    inputs: readonly [{
                                                        name: "loanIds";
                                                        type: "uint256[]";
                                                        indexed: false;
                                                        internalType: "uint256[]";
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "event";
                                                    name: "MultiSourceLoanPendingUpdate";
                                                    inputs: readonly [{
                                                        name: "newAddress";
                                                        type: "address";
                                                        indexed: false;
                                                        internalType: "address";
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "event";
                                                    name: "MultiSourceLoanUpdated";
                                                    inputs: readonly [{
                                                        name: "newAddress";
                                                        type: "address";
                                                        indexed: false;
                                                        internalType: "address";
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "event";
                                                    name: "OwnershipTransferred";
                                                    inputs: readonly [{
                                                        name: "user";
                                                        type: "address";
                                                        indexed: true;
                                                        internalType: "address";
                                                    }, {
                                                        name: "newOwner";
                                                        type: "address";
                                                        indexed: true;
                                                        internalType: "address";
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "event";
                                                    name: "ProtocolFeePendingUpdate";
                                                    inputs: readonly [{
                                                        name: "fee";
                                                        type: "tuple";
                                                        indexed: false;
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "fraction";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "event";
                                                    name: "ProtocolFeeUpdated";
                                                    inputs: readonly [{
                                                        name: "fee";
                                                        type: "tuple";
                                                        indexed: false;
                                                        internalType: "struct WithProtocolFee.ProtocolFee";
                                                        components: readonly [{
                                                            name: "recipient";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "fraction";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "event";
                                                    name: "SellAndRepayExecuted";
                                                    inputs: readonly [{
                                                        name: "loanIds";
                                                        type: "uint256[]";
                                                        indexed: false;
                                                        internalType: "uint256[]";
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "event";
                                                    name: "TaxesPendingUpdate";
                                                    inputs: readonly [{
                                                        name: "newTaxes";
                                                        type: "tuple";
                                                        indexed: false;
                                                        internalType: "struct IPurchaseBundler.Taxes";
                                                        components: readonly [{
                                                            name: "buyTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }, {
                                                            name: "sellTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }];
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "event";
                                                    name: "TaxesUpdated";
                                                    inputs: readonly [{
                                                        name: "taxes";
                                                        type: "tuple";
                                                        indexed: false;
                                                        internalType: "struct IPurchaseBundler.Taxes";
                                                        components: readonly [{
                                                            name: "buyTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }, {
                                                            name: "sellTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }];
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "event";
                                                    name: "TransferOwnerRequested";
                                                    inputs: readonly [{
                                                        name: "newOwner";
                                                        type: "address";
                                                        indexed: false;
                                                        internalType: "address";
                                                    }];
                                                    anonymous: false;
                                                }, {
                                                    type: "error";
                                                    name: "AddressZeroError";
                                                    inputs: readonly [];
                                                }, {
                                                    type: "error";
                                                    name: "CouldNotReturnEthError";
                                                    inputs: readonly [];
                                                }, {
                                                    type: "error";
                                                    name: "InvalidAddressUpdateError";
                                                    inputs: readonly [];
                                                }, {
                                                    type: "error";
                                                    name: "InvalidCallbackError";
                                                    inputs: readonly [];
                                                }, {
                                                    type: "error";
                                                    name: "InvalidInputError";
                                                    inputs: readonly [];
                                                }, {
                                                    type: "error";
                                                    name: "InvalidTaxesError";
                                                    inputs: readonly [{
                                                        name: "newTaxes";
                                                        type: "tuple";
                                                        internalType: "struct IPurchaseBundler.Taxes";
                                                        components: readonly [{
                                                            name: "buyTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }, {
                                                            name: "sellTax";
                                                            type: "uint128";
                                                            internalType: "uint128";
                                                        }];
                                                    }];
                                                }, {
                                                    type: "error";
                                                    name: "MarketplaceAddressNotWhitelisted";
                                                    inputs: readonly [];
                                                }, {
                                                    type: "error";
                                                    name: "OnlyLoanCallableError";
                                                    inputs: readonly [];
                                                }, {
                                                    type: "error";
                                                    name: "OnlyWethSupportedError";
                                                    inputs: readonly [];
                                                }, {
                                                    type: "error";
                                                    name: "TooEarlyError";
                                                    inputs: readonly [{
                                                        name: "_pendingProtocolFeeSetTime";
                                                        type: "uint256";
                                                        internalType: "uint256";
                                                    }];
                                                }, {
                                                    type: "error";
                                                    name: "TooSoonError";
                                                    inputs: readonly [];
                                                }]
                                                +
                                                + +
                                                address: `0x${string}`
                                                +
                                                + +
                                                bcClient: {}
                                                +
                                                +

                                                Type declaration

                                                +
                                                  +
                                                  + +
                                                  wallet: {}
                                                  +
                                                  +

                                                  Type declaration

                                                  +
                                                    +
                                                    + +
                                                    contract: GetContractReturnType<readonly [{
                                                        type: "constructor";
                                                        inputs: readonly [{
                                                            name: "_multiSourceLoanAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "_marketplaceContracts";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "_wethAddress";
                                                            type: "address";
                                                            internalType: "address payable";
                                                        }, {
                                                            name: "_punkMarketAddress";
                                                            type: "address";
                                                            internalType: "address payable";
                                                        }, {
                                                            name: "_wrappedPunkAddress";
                                                            type: "address";
                                                            internalType: "address payable";
                                                        }, {
                                                            name: "__taxes";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }, {
                                                            name: "_minWaitTime";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "__protocolFee";
                                                            type: "tuple";
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "fallback";
                                                        stateMutability: "payable";
                                                    }, {
                                                        type: "receive";
                                                        stateMutability: "payable";
                                                    }, {
                                                        type: "function";
                                                        name: "FEE_UPDATE_NOTICE";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "MIN_WAIT_TIME";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "TAX_UPDATE_NOTICE";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "afterNFTTransfer";
                                                        inputs: readonly [{
                                                            name: "_loan";
                                                            type: "tuple";
                                                            internalType: "struct IMultiSourceLoan.Loan";
                                                            components: readonly [{
                                                                name: "borrower";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "tranche";
                                                                type: "tuple[]";
                                                                internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                components: readonly [{
                                                                    name: "loanId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "floor";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "accruedInterest";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "protocolFee";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }, {
                                                            name: "_executionData";
                                                            type: "bytes";
                                                            internalType: "bytes";
                                                        }];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "bytes4";
                                                            internalType: "bytes4";
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "afterPrincipalTransfer";
                                                        inputs: readonly [{
                                                            name: "_loan";
                                                            type: "tuple";
                                                            internalType: "struct IMultiSourceLoan.Loan";
                                                            components: readonly [{
                                                                name: "borrower";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "tranche";
                                                                type: "tuple[]";
                                                                internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                components: readonly [{
                                                                    name: "loanId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "floor";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "accruedInterest";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "protocolFee";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }, {
                                                            name: "_fee";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "_executionData";
                                                            type: "bytes";
                                                            internalType: "bytes";
                                                        }];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "bytes4";
                                                            internalType: "bytes4";
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "buy";
                                                        inputs: readonly [{
                                                            name: "_executionData";
                                                            type: "bytes[]";
                                                            internalType: "bytes[]";
                                                        }];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256[]";
                                                            internalType: "uint256[]";
                                                        }, {
                                                            name: "";
                                                            type: "tuple[]";
                                                            internalType: "struct IMultiSourceLoan.Loan[]";
                                                            components: readonly [{
                                                                name: "borrower";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "tranche";
                                                                type: "tuple[]";
                                                                internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                components: readonly [{
                                                                    name: "loanId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "floor";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "accruedInterest";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "protocolFee";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        stateMutability: "payable";
                                                    }, {
                                                        type: "function";
                                                        name: "executeSell";
                                                        inputs: readonly [{
                                                            name: "_currencies";
                                                            type: "address[]";
                                                            internalType: "contract ERC20[]";
                                                        }, {
                                                            name: "_currencyAmounts";
                                                            type: "uint256[]";
                                                            internalType: "uint256[]";
                                                        }, {
                                                            name: "_collections";
                                                            type: "address[]";
                                                            internalType: "contract ERC721[]";
                                                        }, {
                                                            name: "_tokenIds";
                                                            type: "uint256[]";
                                                            internalType: "uint256[]";
                                                        }, {
                                                            name: "_marketPlace";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "_executionData";
                                                            type: "bytes[]";
                                                            internalType: "bytes[]";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "finalUpdateMultiSourceLoanAddress";
                                                        inputs: readonly [{
                                                            name: "_newAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "getMultiSourceLoanAddress";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getPendingProtocolFee";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "tuple";
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getPendingProtocolFeeSetTime";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getPendingTaxes";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getPendingTaxesSetTime";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getProtocolFee";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "tuple";
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getTaxes";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "onERC721Received";
                                                        inputs: readonly [{
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "";
                                                            type: "bytes";
                                                            internalType: "bytes";
                                                        }];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "bytes4";
                                                            internalType: "bytes4";
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "owner";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "pendingOwner";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "pendingOwnerTime";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "requestTransferOwner";
                                                        inputs: readonly [{
                                                            name: "_newOwner";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "sell";
                                                        inputs: readonly [{
                                                            name: "_executionData";
                                                            type: "bytes[]";
                                                            internalType: "bytes[]";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "setProtocolFee";
                                                        inputs: readonly [];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "setTaxes";
                                                        inputs: readonly [];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "transferOwnership";
                                                        inputs: readonly [];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "transferOwnership";
                                                        inputs: readonly [{
                                                            name: "newOwner";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "updateMultiSourceLoanAddressFirst";
                                                        inputs: readonly [{
                                                            name: "_newAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "updateProtocolFee";
                                                        inputs: readonly [{
                                                            name: "_newProtocolFee";
                                                            type: "tuple";
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "updateTaxes";
                                                        inputs: readonly [{
                                                            name: "_newTaxes";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "event";
                                                        name: "BNPLLoansStarted";
                                                        inputs: readonly [{
                                                            name: "loanIds";
                                                            type: "uint256[]";
                                                            indexed: false;
                                                            internalType: "uint256[]";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "MultiSourceLoanPendingUpdate";
                                                        inputs: readonly [{
                                                            name: "newAddress";
                                                            type: "address";
                                                            indexed: false;
                                                            internalType: "address";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "MultiSourceLoanUpdated";
                                                        inputs: readonly [{
                                                            name: "newAddress";
                                                            type: "address";
                                                            indexed: false;
                                                            internalType: "address";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "OwnershipTransferred";
                                                        inputs: readonly [{
                                                            name: "user";
                                                            type: "address";
                                                            indexed: true;
                                                            internalType: "address";
                                                        }, {
                                                            name: "newOwner";
                                                            type: "address";
                                                            indexed: true;
                                                            internalType: "address";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "ProtocolFeePendingUpdate";
                                                        inputs: readonly [{
                                                            name: "fee";
                                                            type: "tuple";
                                                            indexed: false;
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "ProtocolFeeUpdated";
                                                        inputs: readonly [{
                                                            name: "fee";
                                                            type: "tuple";
                                                            indexed: false;
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "SellAndRepayExecuted";
                                                        inputs: readonly [{
                                                            name: "loanIds";
                                                            type: "uint256[]";
                                                            indexed: false;
                                                            internalType: "uint256[]";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "TaxesPendingUpdate";
                                                        inputs: readonly [{
                                                            name: "newTaxes";
                                                            type: "tuple";
                                                            indexed: false;
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "TaxesUpdated";
                                                        inputs: readonly [{
                                                            name: "taxes";
                                                            type: "tuple";
                                                            indexed: false;
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "TransferOwnerRequested";
                                                        inputs: readonly [{
                                                            name: "newOwner";
                                                            type: "address";
                                                            indexed: false;
                                                            internalType: "address";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "error";
                                                        name: "AddressZeroError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "CouldNotReturnEthError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "InvalidAddressUpdateError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "InvalidCallbackError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "InvalidInputError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "InvalidTaxesError";
                                                        inputs: readonly [{
                                                            name: "newTaxes";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                    }, {
                                                        type: "error";
                                                        name: "MarketplaceAddressNotWhitelisted";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "OnlyLoanCallableError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "OnlyWethSupportedError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "TooEarlyError";
                                                        inputs: readonly [{
                                                            name: "_pendingProtocolFeeSetTime";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }, {
                                                        type: "error";
                                                        name: "TooSoonError";
                                                        inputs: readonly [];
                                                    }], {} | {}>
                                                    +
                                                    + +
                                                    safeContractWrite: {
                                                        transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                        onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                        setProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                        updateProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                        afterNFTTransfer: ((args, options?) => Promise<`0x${string}`>);
                                                        afterPrincipalTransfer: ((args, options?) => Promise<`0x${string}`>);
                                                        buy: ((args, options?) => Promise<`0x${string}`>);
                                                        finalUpdateMultiSourceLoanAddress: ((args, options?) => Promise<`0x${string}`>);
                                                        sell: ((args, options?) => Promise<`0x${string}`>);
                                                        updateMultiSourceLoanAddressFirst: ((args, options?) => Promise<`0x${string}`>);
                                                        requestTransferOwner: ((args, options?) => Promise<`0x${string}`>);
                                                        executeSell: ((args, options?) => Promise<`0x${string}`>);
                                                        setTaxes: ((args, options?) => Promise<`0x${string}`>);
                                                        updateTaxes: ((args, options?) => Promise<`0x${string}`>);
                                                    }
                                                    +
                                                    +

                                                    Type declaration

                                                    +
                                                      +
                                                    • +
                                                      transferOwnership: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: undefined | readonly [] | readonly [`0x${string}`]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      onERC721Received: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      setProtocolFee: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: undefined | readonly []
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      updateProtocolFee: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [{
                                                                recipient: `0x${string}`;
                                                                fraction: bigint;
                                                            }] | readonly [{
                                                                recipient: `0x${string}`;
                                                                fraction: bigint;
                                                            }] & readonly [{
                                                                recipient: `0x${string}`;
                                                                fraction: bigint;
                                                            }]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      afterNFTTransfer: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [{
                                                                borrower: `0x${string}`;
                                                                nftCollateralTokenId: bigint;
                                                                nftCollateralAddress: `0x${string}`;
                                                                principalAddress: `0x${string}`;
                                                                principalAmount: bigint;
                                                                startTime: bigint;
                                                                duration: bigint;
                                                                tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                protocolFee: bigint;
                                                            }, `0x${string}`] | readonly [{
                                                                borrower: `0x${string}`;
                                                                nftCollateralTokenId: bigint;
                                                                nftCollateralAddress: `0x${string}`;
                                                                principalAddress: `0x${string}`;
                                                                principalAmount: bigint;
                                                                startTime: bigint;
                                                                duration: bigint;
                                                                tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                protocolFee: bigint;
                                                            }, `0x${string}`] & readonly [{
                                                                borrower: `0x${string}`;
                                                                nftCollateralTokenId: bigint;
                                                                nftCollateralAddress: `0x${string}`;
                                                                principalAddress: `0x${string}`;
                                                                principalAmount: bigint;
                                                                startTime: bigint;
                                                                duration: bigint;
                                                                tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                protocolFee: bigint;
                                                            }, `0x${string}`]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      afterPrincipalTransfer: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [{
                                                                borrower: `0x${string}`;
                                                                nftCollateralTokenId: bigint;
                                                                nftCollateralAddress: `0x${string}`;
                                                                principalAddress: `0x${string}`;
                                                                principalAmount: bigint;
                                                                startTime: bigint;
                                                                duration: bigint;
                                                                tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                protocolFee: bigint;
                                                            }, bigint, `0x${string}`] | readonly [{
                                                                borrower: `0x${string}`;
                                                                nftCollateralTokenId: bigint;
                                                                nftCollateralAddress: `0x${string}`;
                                                                principalAddress: `0x${string}`;
                                                                principalAmount: bigint;
                                                                startTime: bigint;
                                                                duration: bigint;
                                                                tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                protocolFee: bigint;
                                                            }, bigint, `0x${string}`] & readonly [{
                                                                borrower: `0x${string}`;
                                                                nftCollateralTokenId: bigint;
                                                                nftCollateralAddress: `0x${string}`;
                                                                principalAddress: `0x${string}`;
                                                                principalAmount: bigint;
                                                                startTime: bigint;
                                                                duration: bigint;
                                                                tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                protocolFee: bigint;
                                                            }, bigint, `0x${string}`]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      buy: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [readonly `0x${string}`[]] | readonly [readonly `0x${string}`[]] & readonly [readonly `0x${string}`[]]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      finalUpdateMultiSourceLoanAddress: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [`0x${string}`]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      sell: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [readonly `0x${string}`[]] | readonly [readonly `0x${string}`[]] & readonly [readonly `0x${string}`[]]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      updateMultiSourceLoanAddressFirst: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [`0x${string}`]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      requestTransferOwner: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [`0x${string}`]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      executeSell: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [readonly `0x${string}`[], readonly bigint[], readonly `0x${string}`[], readonly bigint[], `0x${string}`, readonly `0x${string}`[]] | readonly [readonly `0x${string}`[], readonly bigint[], readonly `0x${string}`[], readonly bigint[], `0x${string}`, readonly `0x${string}`[]] & readonly [readonly `0x${string}`[], readonly bigint[], readonly `0x${string}`[], readonly bigint[], `0x${string}`, readonly `0x${string}`[]]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      setTaxes: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: undefined | readonly []
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    • +
                                                    • +
                                                      updateTaxes: ((args, options?) => Promise<`0x${string}`>)
                                                      +
                                                        +
                                                      • +
                                                          +
                                                        • (args, options?): Promise<`0x${string}`>
                                                        • +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            args: readonly [{
                                                                buyTax: bigint;
                                                                sellTax: bigint;
                                                            }] | readonly [{
                                                                buyTax: bigint;
                                                                sellTax: bigint;
                                                            }] & readonly [{
                                                                buyTax: bigint;
                                                                sellTax: bigint;
                                                            }]
                                                          • +
                                                          • +
                                                            Optional options: {
                                                                value?: bigint;
                                                            }
                                                            +
                                                              +
                                                            • +
                                                              Optional value?: bigint
                                                          +

                                                          Returns Promise<`0x${string}`>

                                                    +
                                                    + +
                                                    parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                        type: "constructor";
                                                        inputs: readonly [{
                                                            name: "_multiSourceLoanAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "_marketplaceContracts";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "_wethAddress";
                                                            type: "address";
                                                            internalType: "address payable";
                                                        }, {
                                                            name: "_punkMarketAddress";
                                                            type: "address";
                                                            internalType: "address payable";
                                                        }, {
                                                            name: "_wrappedPunkAddress";
                                                            type: "address";
                                                            internalType: "address payable";
                                                        }, {
                                                            name: "__taxes";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }, {
                                                            name: "_minWaitTime";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "__protocolFee";
                                                            type: "tuple";
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "fallback";
                                                        stateMutability: "payable";
                                                    }, {
                                                        type: "receive";
                                                        stateMutability: "payable";
                                                    }, {
                                                        type: "function";
                                                        name: "FEE_UPDATE_NOTICE";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "MIN_WAIT_TIME";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "TAX_UPDATE_NOTICE";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "afterNFTTransfer";
                                                        inputs: readonly [{
                                                            name: "_loan";
                                                            type: "tuple";
                                                            internalType: "struct IMultiSourceLoan.Loan";
                                                            components: readonly [{
                                                                name: "borrower";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "tranche";
                                                                type: "tuple[]";
                                                                internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                components: readonly [{
                                                                    name: "loanId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "floor";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "accruedInterest";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "protocolFee";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }, {
                                                            name: "_executionData";
                                                            type: "bytes";
                                                            internalType: "bytes";
                                                        }];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "bytes4";
                                                            internalType: "bytes4";
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "afterPrincipalTransfer";
                                                        inputs: readonly [{
                                                            name: "_loan";
                                                            type: "tuple";
                                                            internalType: "struct IMultiSourceLoan.Loan";
                                                            components: readonly [{
                                                                name: "borrower";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "tranche";
                                                                type: "tuple[]";
                                                                internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                components: readonly [{
                                                                    name: "loanId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "floor";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "accruedInterest";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "protocolFee";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }, {
                                                            name: "_fee";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "_executionData";
                                                            type: "bytes";
                                                            internalType: "bytes";
                                                        }];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "bytes4";
                                                            internalType: "bytes4";
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "buy";
                                                        inputs: readonly [{
                                                            name: "_executionData";
                                                            type: "bytes[]";
                                                            internalType: "bytes[]";
                                                        }];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256[]";
                                                            internalType: "uint256[]";
                                                        }, {
                                                            name: "";
                                                            type: "tuple[]";
                                                            internalType: "struct IMultiSourceLoan.Loan[]";
                                                            components: readonly [{
                                                                name: "borrower";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "nftCollateralTokenId";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "nftCollateralAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "principalAmount";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "startTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "duration";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "tranche";
                                                                type: "tuple[]";
                                                                internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                components: readonly [{
                                                                    name: "loanId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "floor";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "lender";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "accruedInterest";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "aprBps";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "protocolFee";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        stateMutability: "payable";
                                                    }, {
                                                        type: "function";
                                                        name: "executeSell";
                                                        inputs: readonly [{
                                                            name: "_currencies";
                                                            type: "address[]";
                                                            internalType: "contract ERC20[]";
                                                        }, {
                                                            name: "_currencyAmounts";
                                                            type: "uint256[]";
                                                            internalType: "uint256[]";
                                                        }, {
                                                            name: "_collections";
                                                            type: "address[]";
                                                            internalType: "contract ERC721[]";
                                                        }, {
                                                            name: "_tokenIds";
                                                            type: "uint256[]";
                                                            internalType: "uint256[]";
                                                        }, {
                                                            name: "_marketPlace";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "_executionData";
                                                            type: "bytes[]";
                                                            internalType: "bytes[]";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "finalUpdateMultiSourceLoanAddress";
                                                        inputs: readonly [{
                                                            name: "_newAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "getMultiSourceLoanAddress";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getPendingProtocolFee";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "tuple";
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getPendingProtocolFeeSetTime";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getPendingTaxes";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getPendingTaxesSetTime";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getProtocolFee";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "tuple";
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "getTaxes";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "onERC721Received";
                                                        inputs: readonly [{
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }, {
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }, {
                                                            name: "";
                                                            type: "bytes";
                                                            internalType: "bytes";
                                                        }];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "bytes4";
                                                            internalType: "bytes4";
                                                        }];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "owner";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "pendingOwner";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "pendingOwnerTime";
                                                        inputs: readonly [];
                                                        outputs: readonly [{
                                                            name: "";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                        stateMutability: "view";
                                                    }, {
                                                        type: "function";
                                                        name: "requestTransferOwner";
                                                        inputs: readonly [{
                                                            name: "_newOwner";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "sell";
                                                        inputs: readonly [{
                                                            name: "_executionData";
                                                            type: "bytes[]";
                                                            internalType: "bytes[]";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "setProtocolFee";
                                                        inputs: readonly [];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "setTaxes";
                                                        inputs: readonly [];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "transferOwnership";
                                                        inputs: readonly [];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "transferOwnership";
                                                        inputs: readonly [{
                                                            name: "newOwner";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "updateMultiSourceLoanAddressFirst";
                                                        inputs: readonly [{
                                                            name: "_newAddress";
                                                            type: "address";
                                                            internalType: "address";
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "updateProtocolFee";
                                                        inputs: readonly [{
                                                            name: "_newProtocolFee";
                                                            type: "tuple";
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "function";
                                                        name: "updateTaxes";
                                                        inputs: readonly [{
                                                            name: "_newTaxes";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        outputs: readonly [];
                                                        stateMutability: "nonpayable";
                                                    }, {
                                                        type: "event";
                                                        name: "BNPLLoansStarted";
                                                        inputs: readonly [{
                                                            name: "loanIds";
                                                            type: "uint256[]";
                                                            indexed: false;
                                                            internalType: "uint256[]";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "MultiSourceLoanPendingUpdate";
                                                        inputs: readonly [{
                                                            name: "newAddress";
                                                            type: "address";
                                                            indexed: false;
                                                            internalType: "address";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "MultiSourceLoanUpdated";
                                                        inputs: readonly [{
                                                            name: "newAddress";
                                                            type: "address";
                                                            indexed: false;
                                                            internalType: "address";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "OwnershipTransferred";
                                                        inputs: readonly [{
                                                            name: "user";
                                                            type: "address";
                                                            indexed: true;
                                                            internalType: "address";
                                                        }, {
                                                            name: "newOwner";
                                                            type: "address";
                                                            indexed: true;
                                                            internalType: "address";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "ProtocolFeePendingUpdate";
                                                        inputs: readonly [{
                                                            name: "fee";
                                                            type: "tuple";
                                                            indexed: false;
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "ProtocolFeeUpdated";
                                                        inputs: readonly [{
                                                            name: "fee";
                                                            type: "tuple";
                                                            indexed: false;
                                                            internalType: "struct WithProtocolFee.ProtocolFee";
                                                            components: readonly [{
                                                                name: "recipient";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "fraction";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "SellAndRepayExecuted";
                                                        inputs: readonly [{
                                                            name: "loanIds";
                                                            type: "uint256[]";
                                                            indexed: false;
                                                            internalType: "uint256[]";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "TaxesPendingUpdate";
                                                        inputs: readonly [{
                                                            name: "newTaxes";
                                                            type: "tuple";
                                                            indexed: false;
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "TaxesUpdated";
                                                        inputs: readonly [{
                                                            name: "taxes";
                                                            type: "tuple";
                                                            indexed: false;
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "event";
                                                        name: "TransferOwnerRequested";
                                                        inputs: readonly [{
                                                            name: "newOwner";
                                                            type: "address";
                                                            indexed: false;
                                                            internalType: "address";
                                                        }];
                                                        anonymous: false;
                                                    }, {
                                                        type: "error";
                                                        name: "AddressZeroError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "CouldNotReturnEthError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "InvalidAddressUpdateError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "InvalidCallbackError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "InvalidInputError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "InvalidTaxesError";
                                                        inputs: readonly [{
                                                            name: "newTaxes";
                                                            type: "tuple";
                                                            internalType: "struct IPurchaseBundler.Taxes";
                                                            components: readonly [{
                                                                name: "buyTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }, {
                                                                name: "sellTax";
                                                                type: "uint128";
                                                                internalType: "uint128";
                                                            }];
                                                        }];
                                                    }, {
                                                        type: "error";
                                                        name: "MarketplaceAddressNotWhitelisted";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "OnlyLoanCallableError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "OnlyWethSupportedError";
                                                        inputs: readonly [];
                                                    }, {
                                                        type: "error";
                                                        name: "TooEarlyError";
                                                        inputs: readonly [{
                                                            name: "_pendingProtocolFeeSetTime";
                                                            type: "uint256";
                                                            internalType: "uint256";
                                                        }];
                                                    }, {
                                                        type: "error";
                                                        name: "TooSoonError";
                                                        inputs: readonly [];
                                                    }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "BNPLLoansStarted" | "MultiSourceLoanPendingUpdate" | "MultiSourceLoanUpdated" | "SellAndRepayExecuted" | "TransferOwnerRequested" | "TaxesPendingUpdate" | "TaxesUpdated")[]
                                                        ? TFunctionName[number]
                                                        : TFunctionName>)
                                                    +
                                                    +

                                                    Type declaration

                                                    +
                                                      +
                                                    • +
                                                        +
                                                      • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                                                            type: "constructor";
                                                            inputs: readonly [{
                                                                name: "_multiSourceLoanAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "_marketplaceContracts";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "_wethAddress";
                                                                type: "address";
                                                                internalType: "address payable";
                                                            }, {
                                                                name: "_punkMarketAddress";
                                                                type: "address";
                                                                internalType: "address payable";
                                                            }, {
                                                                name: "_wrappedPunkAddress";
                                                                type: "address";
                                                                internalType: "address payable";
                                                            }, {
                                                                name: "__taxes";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }, {
                                                                name: "_minWaitTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "__protocolFee";
                                                                type: "tuple";
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "fallback";
                                                            stateMutability: "payable";
                                                        }, {
                                                            type: "receive";
                                                            stateMutability: "payable";
                                                        }, {
                                                            type: "function";
                                                            name: "FEE_UPDATE_NOTICE";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "MIN_WAIT_TIME";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "TAX_UPDATE_NOTICE";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "afterNFTTransfer";
                                                            inputs: readonly [{
                                                                name: "_loan";
                                                                type: "tuple";
                                                                internalType: "struct IMultiSourceLoan.Loan";
                                                                components: readonly [{
                                                                    name: "borrower";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "tranche";
                                                                    type: "tuple[]";
                                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                    components: readonly [{
                                                                        name: "loanId";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "floor";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        type: "address";
                                                                        internalType: "address";
                                                                    }, {
                                                                        name: "accruedInterest";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "startTime";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }];
                                                                }, {
                                                                    name: "protocolFee";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "_executionData";
                                                                type: "bytes";
                                                                internalType: "bytes";
                                                            }];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "bytes4";
                                                                internalType: "bytes4";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "afterPrincipalTransfer";
                                                            inputs: readonly [{
                                                                name: "_loan";
                                                                type: "tuple";
                                                                internalType: "struct IMultiSourceLoan.Loan";
                                                                components: readonly [{
                                                                    name: "borrower";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "tranche";
                                                                    type: "tuple[]";
                                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                    components: readonly [{
                                                                        name: "loanId";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "floor";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        type: "address";
                                                                        internalType: "address";
                                                                    }, {
                                                                        name: "accruedInterest";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "startTime";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }];
                                                                }, {
                                                                    name: "protocolFee";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "_fee";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "_executionData";
                                                                type: "bytes";
                                                                internalType: "bytes";
                                                            }];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "bytes4";
                                                                internalType: "bytes4";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "buy";
                                                            inputs: readonly [{
                                                                name: "_executionData";
                                                                type: "bytes[]";
                                                                internalType: "bytes[]";
                                                            }];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256[]";
                                                                internalType: "uint256[]";
                                                            }, {
                                                                name: "";
                                                                type: "tuple[]";
                                                                internalType: "struct IMultiSourceLoan.Loan[]";
                                                                components: readonly [{
                                                                    name: "borrower";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "tranche";
                                                                    type: "tuple[]";
                                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                    components: readonly [{
                                                                        name: "loanId";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "floor";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        type: "address";
                                                                        internalType: "address";
                                                                    }, {
                                                                        name: "accruedInterest";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "startTime";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }];
                                                                }, {
                                                                    name: "protocolFee";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            stateMutability: "payable";
                                                        }, {
                                                            type: "function";
                                                            name: "executeSell";
                                                            inputs: readonly [{
                                                                name: "_currencies";
                                                                type: "address[]";
                                                                internalType: "contract ERC20[]";
                                                            }, {
                                                                name: "_currencyAmounts";
                                                                type: "uint256[]";
                                                                internalType: "uint256[]";
                                                            }, {
                                                                name: "_collections";
                                                                type: "address[]";
                                                                internalType: "contract ERC721[]";
                                                            }, {
                                                                name: "_tokenIds";
                                                                type: "uint256[]";
                                                                internalType: "uint256[]";
                                                            }, {
                                                                name: "_marketPlace";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "_executionData";
                                                                type: "bytes[]";
                                                                internalType: "bytes[]";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "finalUpdateMultiSourceLoanAddress";
                                                            inputs: readonly [{
                                                                name: "_newAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "getMultiSourceLoanAddress";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getPendingProtocolFee";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "tuple";
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getPendingProtocolFeeSetTime";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getPendingTaxes";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getPendingTaxesSetTime";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getProtocolFee";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "tuple";
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getTaxes";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "onERC721Received";
                                                            inputs: readonly [{
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "";
                                                                type: "bytes";
                                                                internalType: "bytes";
                                                            }];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "bytes4";
                                                                internalType: "bytes4";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "owner";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "pendingOwner";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "pendingOwnerTime";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "requestTransferOwner";
                                                            inputs: readonly [{
                                                                name: "_newOwner";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "sell";
                                                            inputs: readonly [{
                                                                name: "_executionData";
                                                                type: "bytes[]";
                                                                internalType: "bytes[]";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "setProtocolFee";
                                                            inputs: readonly [];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "setTaxes";
                                                            inputs: readonly [];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "transferOwnership";
                                                            inputs: readonly [];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "transferOwnership";
                                                            inputs: readonly [{
                                                                name: "newOwner";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "updateMultiSourceLoanAddressFirst";
                                                            inputs: readonly [{
                                                                name: "_newAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "updateProtocolFee";
                                                            inputs: readonly [{
                                                                name: "_newProtocolFee";
                                                                type: "tuple";
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "updateTaxes";
                                                            inputs: readonly [{
                                                                name: "_newTaxes";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "event";
                                                            name: "BNPLLoansStarted";
                                                            inputs: readonly [{
                                                                name: "loanIds";
                                                                type: "uint256[]";
                                                                indexed: false;
                                                                internalType: "uint256[]";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "MultiSourceLoanPendingUpdate";
                                                            inputs: readonly [{
                                                                name: "newAddress";
                                                                type: "address";
                                                                indexed: false;
                                                                internalType: "address";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "MultiSourceLoanUpdated";
                                                            inputs: readonly [{
                                                                name: "newAddress";
                                                                type: "address";
                                                                indexed: false;
                                                                internalType: "address";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "OwnershipTransferred";
                                                            inputs: readonly [{
                                                                name: "user";
                                                                type: "address";
                                                                indexed: true;
                                                                internalType: "address";
                                                            }, {
                                                                name: "newOwner";
                                                                type: "address";
                                                                indexed: true;
                                                                internalType: "address";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "ProtocolFeePendingUpdate";
                                                            inputs: readonly [{
                                                                name: "fee";
                                                                type: "tuple";
                                                                indexed: false;
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "ProtocolFeeUpdated";
                                                            inputs: readonly [{
                                                                name: "fee";
                                                                type: "tuple";
                                                                indexed: false;
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "SellAndRepayExecuted";
                                                            inputs: readonly [{
                                                                name: "loanIds";
                                                                type: "uint256[]";
                                                                indexed: false;
                                                                internalType: "uint256[]";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "TaxesPendingUpdate";
                                                            inputs: readonly [{
                                                                name: "newTaxes";
                                                                type: "tuple";
                                                                indexed: false;
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "TaxesUpdated";
                                                            inputs: readonly [{
                                                                name: "taxes";
                                                                type: "tuple";
                                                                indexed: false;
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "TransferOwnerRequested";
                                                            inputs: readonly [{
                                                                name: "newOwner";
                                                                type: "address";
                                                                indexed: false;
                                                                internalType: "address";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "error";
                                                            name: "AddressZeroError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "CouldNotReturnEthError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "InvalidAddressUpdateError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "InvalidCallbackError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "InvalidInputError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "InvalidTaxesError";
                                                            inputs: readonly [{
                                                                name: "newTaxes";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                        }, {
                                                            type: "error";
                                                            name: "MarketplaceAddressNotWhitelisted";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "OnlyLoanCallableError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "OnlyWethSupportedError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "TooEarlyError";
                                                            inputs: readonly [{
                                                                name: "_pendingProtocolFeeSetTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }, {
                                                            type: "error";
                                                            name: "TooSoonError";
                                                            inputs: readonly [];
                                                        }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "BNPLLoansStarted" | "MultiSourceLoanPendingUpdate" | "MultiSourceLoanUpdated" | "SellAndRepayExecuted" | "TransferOwnerRequested" | "TaxesPendingUpdate" | "TaxesUpdated")[]
                                                            ? TFunctionName[number]
                                                            : TFunctionName>
                                                      • +
                                                      • +
                                                        +

                                                        Type Parameters

                                                        +
                                                          +
                                                        • +

                                                          TFunctionName extends "OwnershipTransferred" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "BNPLLoansStarted" | "MultiSourceLoanPendingUpdate" | "MultiSourceLoanUpdated" | "SellAndRepayExecuted" | "TransferOwnerRequested" | "TaxesPendingUpdate" | "TaxesUpdated"

                                                        +
                                                        +

                                                        Parameters

                                                        +
                                                          +
                                                        • +
                                                          eventName: TFunctionName
                                                        • +
                                                        • +
                                                          logs: Log<bigint, number, false>[]
                                                        +

                                                        Returns ParseEventLogsReturnType<readonly [{
                                                            type: "constructor";
                                                            inputs: readonly [{
                                                                name: "_multiSourceLoanAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "_marketplaceContracts";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "_wethAddress";
                                                                type: "address";
                                                                internalType: "address payable";
                                                            }, {
                                                                name: "_punkMarketAddress";
                                                                type: "address";
                                                                internalType: "address payable";
                                                            }, {
                                                                name: "_wrappedPunkAddress";
                                                                type: "address";
                                                                internalType: "address payable";
                                                            }, {
                                                                name: "__taxes";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }, {
                                                                name: "_minWaitTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "__protocolFee";
                                                                type: "tuple";
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "fallback";
                                                            stateMutability: "payable";
                                                        }, {
                                                            type: "receive";
                                                            stateMutability: "payable";
                                                        }, {
                                                            type: "function";
                                                            name: "FEE_UPDATE_NOTICE";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "MIN_WAIT_TIME";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "TAX_UPDATE_NOTICE";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "afterNFTTransfer";
                                                            inputs: readonly [{
                                                                name: "_loan";
                                                                type: "tuple";
                                                                internalType: "struct IMultiSourceLoan.Loan";
                                                                components: readonly [{
                                                                    name: "borrower";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "tranche";
                                                                    type: "tuple[]";
                                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                    components: readonly [{
                                                                        name: "loanId";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "floor";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        type: "address";
                                                                        internalType: "address";
                                                                    }, {
                                                                        name: "accruedInterest";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "startTime";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }];
                                                                }, {
                                                                    name: "protocolFee";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "_executionData";
                                                                type: "bytes";
                                                                internalType: "bytes";
                                                            }];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "bytes4";
                                                                internalType: "bytes4";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "afterPrincipalTransfer";
                                                            inputs: readonly [{
                                                                name: "_loan";
                                                                type: "tuple";
                                                                internalType: "struct IMultiSourceLoan.Loan";
                                                                components: readonly [{
                                                                    name: "borrower";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "tranche";
                                                                    type: "tuple[]";
                                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                    components: readonly [{
                                                                        name: "loanId";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "floor";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        type: "address";
                                                                        internalType: "address";
                                                                    }, {
                                                                        name: "accruedInterest";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "startTime";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }];
                                                                }, {
                                                                    name: "protocolFee";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }, {
                                                                name: "_fee";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "_executionData";
                                                                type: "bytes";
                                                                internalType: "bytes";
                                                            }];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "bytes4";
                                                                internalType: "bytes4";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "buy";
                                                            inputs: readonly [{
                                                                name: "_executionData";
                                                                type: "bytes[]";
                                                                internalType: "bytes[]";
                                                            }];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256[]";
                                                                internalType: "uint256[]";
                                                            }, {
                                                                name: "";
                                                                type: "tuple[]";
                                                                internalType: "struct IMultiSourceLoan.Loan[]";
                                                                components: readonly [{
                                                                    name: "borrower";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "nftCollateralTokenId";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "nftCollateralAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAddress";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "principalAmount";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "startTime";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "duration";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }, {
                                                                    name: "tranche";
                                                                    type: "tuple[]";
                                                                    internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                    components: readonly [{
                                                                        name: "loanId";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "floor";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "principalAmount";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "lender";
                                                                        type: "address";
                                                                        internalType: "address";
                                                                    }, {
                                                                        name: "accruedInterest";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "startTime";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }, {
                                                                        name: "aprBps";
                                                                        type: "uint256";
                                                                        internalType: "uint256";
                                                                    }];
                                                                }, {
                                                                    name: "protocolFee";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            stateMutability: "payable";
                                                        }, {
                                                            type: "function";
                                                            name: "executeSell";
                                                            inputs: readonly [{
                                                                name: "_currencies";
                                                                type: "address[]";
                                                                internalType: "contract ERC20[]";
                                                            }, {
                                                                name: "_currencyAmounts";
                                                                type: "uint256[]";
                                                                internalType: "uint256[]";
                                                            }, {
                                                                name: "_collections";
                                                                type: "address[]";
                                                                internalType: "contract ERC721[]";
                                                            }, {
                                                                name: "_tokenIds";
                                                                type: "uint256[]";
                                                                internalType: "uint256[]";
                                                            }, {
                                                                name: "_marketPlace";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "_executionData";
                                                                type: "bytes[]";
                                                                internalType: "bytes[]";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "finalUpdateMultiSourceLoanAddress";
                                                            inputs: readonly [{
                                                                name: "_newAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "getMultiSourceLoanAddress";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getPendingProtocolFee";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "tuple";
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getPendingProtocolFeeSetTime";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getPendingTaxes";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getPendingTaxesSetTime";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getProtocolFee";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "tuple";
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "getTaxes";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "onERC721Received";
                                                            inputs: readonly [{
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }, {
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }, {
                                                                name: "";
                                                                type: "bytes";
                                                                internalType: "bytes";
                                                            }];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "bytes4";
                                                                internalType: "bytes4";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "owner";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "pendingOwner";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "pendingOwnerTime";
                                                            inputs: readonly [];
                                                            outputs: readonly [{
                                                                name: "";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            name: "requestTransferOwner";
                                                            inputs: readonly [{
                                                                name: "_newOwner";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "sell";
                                                            inputs: readonly [{
                                                                name: "_executionData";
                                                                type: "bytes[]";
                                                                internalType: "bytes[]";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "setProtocolFee";
                                                            inputs: readonly [];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "setTaxes";
                                                            inputs: readonly [];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "transferOwnership";
                                                            inputs: readonly [];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "transferOwnership";
                                                            inputs: readonly [{
                                                                name: "newOwner";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "updateMultiSourceLoanAddressFirst";
                                                            inputs: readonly [{
                                                                name: "_newAddress";
                                                                type: "address";
                                                                internalType: "address";
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "updateProtocolFee";
                                                            inputs: readonly [{
                                                                name: "_newProtocolFee";
                                                                type: "tuple";
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            name: "updateTaxes";
                                                            inputs: readonly [{
                                                                name: "_newTaxes";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "event";
                                                            name: "BNPLLoansStarted";
                                                            inputs: readonly [{
                                                                name: "loanIds";
                                                                type: "uint256[]";
                                                                indexed: false;
                                                                internalType: "uint256[]";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "MultiSourceLoanPendingUpdate";
                                                            inputs: readonly [{
                                                                name: "newAddress";
                                                                type: "address";
                                                                indexed: false;
                                                                internalType: "address";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "MultiSourceLoanUpdated";
                                                            inputs: readonly [{
                                                                name: "newAddress";
                                                                type: "address";
                                                                indexed: false;
                                                                internalType: "address";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "OwnershipTransferred";
                                                            inputs: readonly [{
                                                                name: "user";
                                                                type: "address";
                                                                indexed: true;
                                                                internalType: "address";
                                                            }, {
                                                                name: "newOwner";
                                                                type: "address";
                                                                indexed: true;
                                                                internalType: "address";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "ProtocolFeePendingUpdate";
                                                            inputs: readonly [{
                                                                name: "fee";
                                                                type: "tuple";
                                                                indexed: false;
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "ProtocolFeeUpdated";
                                                            inputs: readonly [{
                                                                name: "fee";
                                                                type: "tuple";
                                                                indexed: false;
                                                                internalType: "struct WithProtocolFee.ProtocolFee";
                                                                components: readonly [{
                                                                    name: "recipient";
                                                                    type: "address";
                                                                    internalType: "address";
                                                                }, {
                                                                    name: "fraction";
                                                                    type: "uint256";
                                                                    internalType: "uint256";
                                                                }];
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "SellAndRepayExecuted";
                                                            inputs: readonly [{
                                                                name: "loanIds";
                                                                type: "uint256[]";
                                                                indexed: false;
                                                                internalType: "uint256[]";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "TaxesPendingUpdate";
                                                            inputs: readonly [{
                                                                name: "newTaxes";
                                                                type: "tuple";
                                                                indexed: false;
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "TaxesUpdated";
                                                            inputs: readonly [{
                                                                name: "taxes";
                                                                type: "tuple";
                                                                indexed: false;
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "event";
                                                            name: "TransferOwnerRequested";
                                                            inputs: readonly [{
                                                                name: "newOwner";
                                                                type: "address";
                                                                indexed: false;
                                                                internalType: "address";
                                                            }];
                                                            anonymous: false;
                                                        }, {
                                                            type: "error";
                                                            name: "AddressZeroError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "CouldNotReturnEthError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "InvalidAddressUpdateError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "InvalidCallbackError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "InvalidInputError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "InvalidTaxesError";
                                                            inputs: readonly [{
                                                                name: "newTaxes";
                                                                type: "tuple";
                                                                internalType: "struct IPurchaseBundler.Taxes";
                                                                components: readonly [{
                                                                    name: "buyTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }, {
                                                                    name: "sellTax";
                                                                    type: "uint128";
                                                                    internalType: "uint128";
                                                                }];
                                                            }];
                                                        }, {
                                                            type: "error";
                                                            name: "MarketplaceAddressNotWhitelisted";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "OnlyLoanCallableError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "OnlyWethSupportedError";
                                                            inputs: readonly [];
                                                        }, {
                                                            type: "error";
                                                            name: "TooEarlyError";
                                                            inputs: readonly [{
                                                                name: "_pendingProtocolFeeSetTime";
                                                                type: "uint256";
                                                                internalType: "uint256";
                                                            }];
                                                        }, {
                                                            type: "error";
                                                            name: "TooSoonError";
                                                            inputs: readonly [];
                                                        }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "BNPLLoansStarted" | "MultiSourceLoanPendingUpdate" | "MultiSourceLoanUpdated" | "SellAndRepayExecuted" | "TransferOwnerRequested" | "TaxesPendingUpdate" | "TaxesUpdated")[]
                                                            ? TFunctionName[number]
                                                            : TFunctionName>

                                                    +
                                                    + +
                                                    +
                                                    \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.UserVaultV5.html b/docs/0.17.2/classes/Internal.UserVaultV5.html new file mode 100644 index 00000000..473a2131 --- /dev/null +++ b/docs/0.17.2/classes/Internal.UserVaultV5.html @@ -0,0 +1,710 @@ +UserVaultV5 | Gondi JS SDK - v0.17.2
                                                    +
                                                    + +
                                                    +
                                                    +
                                                    +
                                                    + +

                                                    Class UserVaultV5

                                                    +
                                                    +

                                                    Hierarchy

                                                    +
                                                    +
                                                    +
                                                    +
                                                    + +
                                                    +
                                                    +

                                                    Constructors

                                                    +
                                                    + +
                                                    +
                                                    +

                                                    Methods

                                                    +
                                                    + +
                                                      + +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                      +

                                                      Returns Promise<{
                                                          txHash: `0x${string}`;
                                                          waitTxInBlock: (() => Promise<{
                                                              events: {
                                                                  vaultId: bigint;
                                                                  collection: `0x${string}`;
                                                                  tokenId: bigint;
                                                              }[];
                                                              oldEvents: {
                                                                  vaultId: bigint;
                                                                  collection: `0x${string}`;
                                                                  tokenId: bigint;
                                                              }[];
                                                          }>);
                                                      }>

                                                    +
                                                    + +
                                                      + +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                      +

                                                      Returns Promise<{
                                                          vaultId: bigint;
                                                          receipts: {
                                                              vaultId: bigint;
                                                              collection: `0x${string}`;
                                                              tokenId: bigint;
                                                          }[];
                                                      }>

                                                    +
                                                    + +
                                                      + +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                      +

                                                      Returns Promise<{
                                                          txHash: `0x${string}`;
                                                          waitTxInBlock: (() => Promise<{
                                                              vaultId: bigint;
                                                              collection: `0x${string}`;
                                                              tokenId: bigint;
                                                          }>);
                                                      }>

                                                    +
                                                    + +
                                                      + +
                                                    • +

                                                      Returns Promise<{
                                                          txHash: `0x${string}`;
                                                          waitTxInBlock: (() => Promise<{
                                                              vaultId: bigint;
                                                              token: `0x${string}`;
                                                              tokenId: bigint;
                                                              amount: bigint;
                                                          }>);
                                                      }>

                                                    +
                                                    + +
                                                      + +
                                                    • +
                                                      +

                                                      Parameters

                                                      +
                                                        +
                                                      • +
                                                        data: `0x${string}`
                                                      +

                                                      Returns Promise<{
                                                          txHash: `0x${string}`;
                                                          waitTxInBlock: (() => Promise<TransactionReceipt>);
                                                      }>

                                                    +
                                                    +

                                                    Properties

                                                    +
                                                    + +
                                                    abi: readonly [{
                                                        stateMutability: "nonpayable";
                                                        type: "constructor";
                                                        inputs: readonly [{
                                                            name: "currencyManager";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "collectionManager";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                    }, {
                                                        type: "error";
                                                        inputs: readonly [];
                                                        name: "AssetNotOwnedError";
                                                    }, {
                                                        type: "error";
                                                        inputs: readonly [];
                                                        name: "CollectionNotWhitelistedError";
                                                    }, {
                                                        type: "error";
                                                        inputs: readonly [];
                                                        name: "CurrencyNotWhitelistedError";
                                                    }, {
                                                        type: "error";
                                                        inputs: readonly [];
                                                        name: "LengthMismatchError";
                                                    }, {
                                                        type: "error";
                                                        inputs: readonly [{
                                                            name: "vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "NotApprovedError";
                                                    }, {
                                                        type: "error";
                                                        inputs: readonly [{
                                                            name: "vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "VaultNotExistsError";
                                                    }, {
                                                        type: "error";
                                                        inputs: readonly [];
                                                        name: "WithdrawingETHError";
                                                    }, {
                                                        type: "error";
                                                        inputs: readonly [];
                                                        name: "WrongMethodError";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "spender";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: true;
                                                        }];
                                                        name: "Approval";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "operator";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "approved";
                                                            internalType: "bool";
                                                            type: "bool";
                                                            indexed: false;
                                                        }];
                                                        name: "ApprovalForAll";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: false;
                                                        }, {
                                                            name: "token";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: false;
                                                        }, {
                                                            name: "amount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: false;
                                                        }];
                                                        name: "ERC20Deposited";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: false;
                                                        }, {
                                                            name: "token";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: false;
                                                        }, {
                                                            name: "amount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: false;
                                                        }];
                                                        name: "ERC20Withdrawn";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: false;
                                                        }, {
                                                            name: "collection";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: false;
                                                        }, {
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: false;
                                                        }];
                                                        name: "ERC721Deposited";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: false;
                                                        }, {
                                                            name: "collection";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: false;
                                                        }, {
                                                            name: "tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: false;
                                                        }];
                                                        name: "ERC721Withdrawn";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "user";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "newOwner";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }];
                                                        name: "OwnershipTransferred";
                                                    }, {
                                                        type: "event";
                                                        anonymous: false;
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                            indexed: true;
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                            indexed: true;
                                                        }];
                                                        name: "Transfer";
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_token";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "ERC20BalanceOf";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_collection";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "_tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "ERC721OwnerOf";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "ETH";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "spender";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "approve";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "balanceOf";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_assetRecipient";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "burn";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_collections";
                                                            internalType: "address[]";
                                                            type: "address[]";
                                                        }, {
                                                            name: "_tokenIds";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }, {
                                                            name: "_tokens";
                                                            internalType: "address[]";
                                                            type: "address[]";
                                                        }];
                                                        name: "burnAndWithdraw";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_token";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "_amount";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "depositERC20";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_collection";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "_tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "depositERC721";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_collection";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "_tokenIds";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }];
                                                        name: "depositERC721s";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "payable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "depositEth";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "getApproved";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "isApprovedForAll";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "mint";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "name";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "string";
                                                            type: "string";
                                                        }];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                        name: "onERC721Received";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "bytes4";
                                                            type: "bytes4";
                                                        }];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "owner";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "ownerOf";
                                                        outputs: readonly [{
                                                            name: "owner";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "safeTransferFrom";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "data";
                                                            internalType: "bytes";
                                                            type: "bytes";
                                                        }];
                                                        name: "safeTransferFrom";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "operator";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "approved";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                        name: "setApprovalForAll";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "interfaceId";
                                                            internalType: "bytes4";
                                                            type: "bytes4";
                                                        }];
                                                        name: "supportsInterface";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "bool";
                                                            type: "bool";
                                                        }];
                                                    }, {
                                                        stateMutability: "view";
                                                        type: "function";
                                                        inputs: readonly [];
                                                        name: "symbol";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "string";
                                                            type: "string";
                                                        }];
                                                    }, {
                                                        stateMutability: "pure";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "tokenURI";
                                                        outputs: readonly [{
                                                            name: "";
                                                            internalType: "string";
                                                            type: "string";
                                                        }];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "from";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "to";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "id";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "transferFrom";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "newOwner";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "transferOwnership";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_token";
                                                            internalType: "address";
                                                            type: "address";
                                                        }];
                                                        name: "withdrawERC20";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_tokens";
                                                            internalType: "address[]";
                                                            type: "address[]";
                                                        }];
                                                        name: "withdrawERC20s";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_collection";
                                                            internalType: "address";
                                                            type: "address";
                                                        }, {
                                                            name: "_tokenId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "withdrawERC721";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }, {
                                                            name: "_collections";
                                                            internalType: "address[]";
                                                            type: "address[]";
                                                        }, {
                                                            name: "_tokenIds";
                                                            internalType: "uint256[]";
                                                            type: "uint256[]";
                                                        }];
                                                        name: "withdrawERC721s";
                                                        outputs: readonly [];
                                                    }, {
                                                        stateMutability: "nonpayable";
                                                        type: "function";
                                                        inputs: readonly [{
                                                            name: "_vaultId";
                                                            internalType: "uint256";
                                                            type: "uint256";
                                                        }];
                                                        name: "withdrawEth";
                                                        outputs: readonly [];
                                                    }]
                                                    +
                                                    + +
                                                    address: `0x${string}`
                                                    +
                                                    + +
                                                    bcClient: {}
                                                    +
                                                    +

                                                    Type declaration

                                                    +
                                                      +
                                                      + +
                                                      wallet: {}
                                                      +
                                                      +

                                                      Type declaration

                                                      +
                                                        +
                                                        + +
                                                        contract: GetContractReturnType<readonly [{
                                                            stateMutability: "nonpayable";
                                                            type: "constructor";
                                                            inputs: readonly [{
                                                                name: "currencyManager";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "collectionManager";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "AssetNotOwnedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "CollectionNotWhitelistedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "CurrencyNotWhitelistedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "LengthMismatchError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "NotApprovedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "VaultNotExistsError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "WithdrawingETHError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "WrongMethodError";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "spender";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: true;
                                                            }];
                                                            name: "Approval";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "operator";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "approved";
                                                                internalType: "bool";
                                                                type: "bool";
                                                                indexed: false;
                                                            }];
                                                            name: "ApprovalForAll";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "token";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC20Deposited";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "token";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC20Withdrawn";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "collection";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC721Deposited";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "collection";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC721Withdrawn";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "user";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "newOwner";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }];
                                                            name: "OwnershipTransferred";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: true;
                                                            }];
                                                            name: "Transfer";
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "ERC20BalanceOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "ERC721OwnerOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "ETH";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "spender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "approve";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "balanceOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_assetRecipient";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "burn";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collections";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }, {
                                                                name: "_tokens";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }];
                                                            name: "burnAndWithdraw";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositERC20";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositERC721";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }];
                                                            name: "depositERC721s";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "payable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositEth";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "getApproved";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "isApprovedForAll";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "mint";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "name";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "string";
                                                                type: "string";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                            name: "onERC721Received";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bytes4";
                                                                type: "bytes4";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "owner";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "ownerOf";
                                                            outputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "safeTransferFrom";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "data";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                            name: "safeTransferFrom";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "operator";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "approved";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                            name: "setApprovalForAll";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "interfaceId";
                                                                internalType: "bytes4";
                                                                type: "bytes4";
                                                            }];
                                                            name: "supportsInterface";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "symbol";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "string";
                                                                type: "string";
                                                            }];
                                                        }, {
                                                            stateMutability: "pure";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "tokenURI";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "string";
                                                                type: "string";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "transferFrom";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "newOwner";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "transferOwnership";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "withdrawERC20";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_tokens";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }];
                                                            name: "withdrawERC20s";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "withdrawERC721";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collections";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }];
                                                            name: "withdrawERC721s";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "withdrawEth";
                                                            outputs: readonly [];
                                                        }], {} | {}>
                                                        +
                                                        + +
                                                        safeContractWrite: {
                                                            transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                            onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                            approve: ((args, options?) => Promise<`0x${string}`>);
                                                            transferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                            safeTransferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                            setApprovalForAll: ((args, options?) => Promise<`0x${string}`>);
                                                            mint: ((args, options?) => Promise<`0x${string}`>);
                                                            burn: ((args, options?) => Promise<`0x${string}`>);
                                                            burnAndWithdraw: ((args, options?) => Promise<`0x${string}`>);
                                                            depositERC20: ((args, options?) => Promise<`0x${string}`>);
                                                            depositERC721: ((args, options?) => Promise<`0x${string}`>);
                                                            depositERC721s: ((args, options?) => Promise<`0x${string}`>);
                                                            depositEth: ((args, options?) => Promise<`0x${string}`>);
                                                            withdrawERC20: ((args, options?) => Promise<`0x${string}`>);
                                                            withdrawERC20s: ((args, options?) => Promise<`0x${string}`>);
                                                            withdrawERC721: ((args, options?) => Promise<`0x${string}`>);
                                                            withdrawERC721s: ((args, options?) => Promise<`0x${string}`>);
                                                            withdrawEth: ((args, options?) => Promise<`0x${string}`>);
                                                        }
                                                        +
                                                        +

                                                        Type declaration

                                                        +
                                                          +
                                                        • +
                                                          transferOwnership: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [`0x${string}`]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          onERC721Received: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          approve: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [`0x${string}`, bigint]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          transferFrom: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [`0x${string}`, `0x${string}`, bigint]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          safeTransferFrom: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: (undefined | readonly [`0x${string}`, `0x${string}`, bigint] | readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]) & Widen<readonly [`0x${string}`, `0x${string}`, bigint] | readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]>
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          setApprovalForAll: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [`0x${string}`, Widen<boolean>] | readonly [`0x${string}`, boolean] & readonly [`0x${string}`, Widen<boolean>]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          mint: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: undefined | readonly []
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          burn: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint, `0x${string}`]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          burnAndWithdraw: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint, readonly `0x${string}`[], readonly bigint[], readonly `0x${string}`[]] | readonly [bigint, readonly `0x${string}`[], readonly bigint[], readonly `0x${string}`[]] & readonly [bigint, readonly `0x${string}`[], readonly bigint[], readonly `0x${string}`[]]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          depositERC20: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint, `0x${string}`, bigint]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          depositERC721: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint, `0x${string}`, bigint]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          depositERC721s: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint, `0x${string}`, readonly bigint[]] | readonly [bigint, `0x${string}`, readonly bigint[]] & readonly [bigint, `0x${string}`, readonly bigint[]]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          depositEth: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          withdrawERC20: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint, `0x${string}`]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          withdrawERC20s: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint, readonly `0x${string}`[]] | readonly [bigint, readonly `0x${string}`[]] & readonly [bigint, readonly `0x${string}`[]]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          withdrawERC721: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint, `0x${string}`, bigint]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          withdrawERC721s: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint, readonly `0x${string}`[], readonly bigint[]] | readonly [bigint, readonly `0x${string}`[], readonly bigint[]] & readonly [bigint, readonly `0x${string}`[], readonly bigint[]]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        • +
                                                        • +
                                                          withdrawEth: ((args, options?) => Promise<`0x${string}`>)
                                                          +
                                                            +
                                                          • +
                                                              +
                                                            • (args, options?): Promise<`0x${string}`>
                                                            • +
                                                            • +
                                                              +

                                                              Parameters

                                                              +
                                                                +
                                                              • +
                                                                args: readonly [bigint]
                                                              • +
                                                              • +
                                                                Optional options: {
                                                                    value?: bigint;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional value?: bigint
                                                              +

                                                              Returns Promise<`0x${string}`>

                                                        +
                                                        + +
                                                        parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                            stateMutability: "nonpayable";
                                                            type: "constructor";
                                                            inputs: readonly [{
                                                                name: "currencyManager";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "collectionManager";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "AssetNotOwnedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "CollectionNotWhitelistedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "CurrencyNotWhitelistedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "LengthMismatchError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "NotApprovedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "VaultNotExistsError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "WithdrawingETHError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "WrongMethodError";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "spender";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: true;
                                                            }];
                                                            name: "Approval";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "operator";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "approved";
                                                                internalType: "bool";
                                                                type: "bool";
                                                                indexed: false;
                                                            }];
                                                            name: "ApprovalForAll";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "token";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC20Deposited";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "token";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC20Withdrawn";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "collection";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC721Deposited";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "collection";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC721Withdrawn";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "user";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "newOwner";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }];
                                                            name: "OwnershipTransferred";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: true;
                                                            }];
                                                            name: "Transfer";
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "ERC20BalanceOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "ERC721OwnerOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "ETH";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "spender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "approve";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "balanceOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_assetRecipient";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "burn";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collections";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }, {
                                                                name: "_tokens";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }];
                                                            name: "burnAndWithdraw";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositERC20";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositERC721";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }];
                                                            name: "depositERC721s";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "payable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositEth";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "getApproved";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "isApprovedForAll";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "mint";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "name";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "string";
                                                                type: "string";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                            name: "onERC721Received";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bytes4";
                                                                type: "bytes4";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "owner";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "ownerOf";
                                                            outputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "safeTransferFrom";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "data";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                            name: "safeTransferFrom";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "operator";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "approved";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                            name: "setApprovalForAll";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "interfaceId";
                                                                internalType: "bytes4";
                                                                type: "bytes4";
                                                            }];
                                                            name: "supportsInterface";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                        }, {
                                                            stateMutability: "view";
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "symbol";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "string";
                                                                type: "string";
                                                            }];
                                                        }, {
                                                            stateMutability: "pure";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "tokenURI";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "string";
                                                                type: "string";
                                                            }];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "transferFrom";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "newOwner";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "transferOwnership";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "withdrawERC20";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_tokens";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }];
                                                            name: "withdrawERC20s";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "withdrawERC721";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collections";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }];
                                                            name: "withdrawERC721s";
                                                            outputs: readonly [];
                                                        }, {
                                                            stateMutability: "nonpayable";
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "withdrawEth";
                                                            outputs: readonly [];
                                                        }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn")[]
                                                            ? TFunctionName[number]
                                                            : TFunctionName>)
                                                        +
                                                        +

                                                        Type declaration

                                                        +
                                                          +
                                                        • +
                                                            +
                                                          • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                                                                stateMutability: "nonpayable";
                                                                type: "constructor";
                                                                inputs: readonly [{
                                                                    name: "currencyManager";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "collectionManager";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "AssetNotOwnedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "CollectionNotWhitelistedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "CurrencyNotWhitelistedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "LengthMismatchError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "NotApprovedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "VaultNotExistsError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "WithdrawingETHError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "WrongMethodError";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "spender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: true;
                                                                }];
                                                                name: "Approval";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "operator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "approved";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                    indexed: false;
                                                                }];
                                                                name: "ApprovalForAll";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC20Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC20Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC721Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC721Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "user";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "newOwner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }];
                                                                name: "OwnershipTransferred";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: true;
                                                                }];
                                                                name: "Transfer";
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "ERC20BalanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ERC721OwnerOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "ETH";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "spender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "approve";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "balanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_assetRecipient";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "burn";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collections";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }];
                                                                name: "burnAndWithdraw";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC20";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC721";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "depositERC721s";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "payable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositEth";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "getApproved";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "isApprovedForAll";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "mint";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "name";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "onERC721Received";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "owner";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ownerOf";
                                                                outputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "safeTransferFrom";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "data";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "safeTransferFrom";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "operator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "approved";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                                name: "setApprovalForAll";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "interfaceId";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                name: "supportsInterface";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "symbol";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                            }, {
                                                                stateMutability: "pure";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "tokenURI";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "transferFrom";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "newOwner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "transferOwnership";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "withdrawERC20";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }];
                                                                name: "withdrawERC20s";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawERC721";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collections";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "withdrawERC721s";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawEth";
                                                                outputs: readonly [];
                                                            }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn")[]
                                                                ? TFunctionName[number]
                                                                : TFunctionName>
                                                          • +
                                                          • +
                                                            +

                                                            Type Parameters

                                                            +
                                                              +
                                                            • +

                                                              TFunctionName extends "OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn"

                                                            +
                                                            +

                                                            Parameters

                                                            +
                                                              +
                                                            • +
                                                              eventName: TFunctionName
                                                            • +
                                                            • +
                                                              logs: Log<bigint, number, false>[]
                                                            +

                                                            Returns ParseEventLogsReturnType<readonly [{
                                                                stateMutability: "nonpayable";
                                                                type: "constructor";
                                                                inputs: readonly [{
                                                                    name: "currencyManager";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "collectionManager";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "AssetNotOwnedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "CollectionNotWhitelistedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "CurrencyNotWhitelistedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "LengthMismatchError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "NotApprovedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "VaultNotExistsError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "WithdrawingETHError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "WrongMethodError";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "spender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: true;
                                                                }];
                                                                name: "Approval";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "operator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "approved";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                    indexed: false;
                                                                }];
                                                                name: "ApprovalForAll";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC20Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC20Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC721Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC721Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "user";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "newOwner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }];
                                                                name: "OwnershipTransferred";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: true;
                                                                }];
                                                                name: "Transfer";
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "ERC20BalanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ERC721OwnerOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "ETH";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "spender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "approve";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "balanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_assetRecipient";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "burn";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collections";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }];
                                                                name: "burnAndWithdraw";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC20";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC721";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "depositERC721s";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "payable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositEth";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "getApproved";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "isApprovedForAll";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "mint";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "name";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "onERC721Received";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "owner";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ownerOf";
                                                                outputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "safeTransferFrom";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "data";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "safeTransferFrom";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "operator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "approved";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                                name: "setApprovalForAll";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "interfaceId";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                name: "supportsInterface";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                            }, {
                                                                stateMutability: "view";
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "symbol";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                            }, {
                                                                stateMutability: "pure";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "tokenURI";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "transferFrom";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "newOwner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "transferOwnership";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "withdrawERC20";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }];
                                                                name: "withdrawERC20s";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawERC721";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collections";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "withdrawERC721s";
                                                                outputs: readonly [];
                                                            }, {
                                                                stateMutability: "nonpayable";
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawEth";
                                                                outputs: readonly [];
                                                            }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn")[]
                                                                ? TFunctionName[number]
                                                                : TFunctionName>

                                                        +
                                                        + +
                                                        +
                                                        \ No newline at end of file diff --git a/docs/0.17.2/classes/Internal.UserVaultV6.html b/docs/0.17.2/classes/Internal.UserVaultV6.html new file mode 100644 index 00000000..c404decc --- /dev/null +++ b/docs/0.17.2/classes/Internal.UserVaultV6.html @@ -0,0 +1,823 @@ +UserVaultV6 | Gondi JS SDK - v0.17.2
                                                        +
                                                        + +
                                                        +
                                                        +
                                                        +
                                                        + +

                                                        Class UserVaultV6

                                                        +
                                                        +

                                                        Hierarchy

                                                        +
                                                        +
                                                        +
                                                        +
                                                        + +
                                                        +
                                                        +

                                                        Constructors

                                                        +
                                                        + +
                                                        +
                                                        +

                                                        Methods

                                                        +
                                                        + +
                                                          + +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                          +

                                                          Returns Promise<{
                                                              txHash: `0x${string}`;
                                                              waitTxInBlock: (() => Promise<{
                                                                  events: {
                                                                      vaultId: bigint;
                                                                      collection: `0x${string}`;
                                                                      tokenId: bigint;
                                                                  }[];
                                                                  oldEvents: {
                                                                      vaultId: bigint;
                                                                      collection: `0x${string}`;
                                                                      tokenId: bigint;
                                                                  }[];
                                                              }>);
                                                          }>

                                                        +
                                                        + +
                                                          + +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                          +

                                                          Returns Promise<{
                                                              vaultId: bigint;
                                                              receipts: ({
                                                                  vaultId: bigint;
                                                                  collection: `0x${string}`;
                                                                  tokenId: bigint;
                                                              } | {
                                                                  vaultId: bigint;
                                                                  token: `0x${string}`;
                                                                  tokenId: bigint;
                                                                  amount: bigint;
                                                              })[];
                                                          }>

                                                        +
                                                        + +
                                                          + +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                          +

                                                          Returns Promise<{
                                                              txHash: `0x${string}`;
                                                              waitTxInBlock: (() => Promise<{
                                                                  vaultId: bigint;
                                                                  collection: `0x${string}`;
                                                                  tokenId: bigint;
                                                              }>);
                                                          }>

                                                        +
                                                        + +
                                                          + +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                          +

                                                          Returns Promise<{
                                                              txHash: `0x${string}`;
                                                              waitTxInBlock: (() => Promise<{
                                                                  vaultId: bigint;
                                                                  token: `0x${string}`;
                                                                  tokenId: bigint;
                                                                  amount: bigint;
                                                              }>);
                                                          }>

                                                        +
                                                        + +
                                                          + +
                                                        • +
                                                          +

                                                          Parameters

                                                          +
                                                            +
                                                          • +
                                                            data: `0x${string}`
                                                          +

                                                          Returns Promise<{
                                                              txHash: `0x${string}`;
                                                              waitTxInBlock: (() => Promise<TransactionReceipt>);
                                                          }>

                                                        +
                                                        +

                                                        Properties

                                                        +
                                                        + +
                                                        abi: readonly [{
                                                            type: "constructor";
                                                            inputs: readonly [{
                                                                name: "currencyManager";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "collectionManager";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "ERC1155BalanceOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "ERC20BalanceOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "ERC721OwnerOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "ETH";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "spender";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "approve";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "balanceOf";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_assetRecipient";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "burn";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collections";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }, {
                                                                name: "_tokens";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }, {
                                                                name: "_erc1155Tokens";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }, {
                                                                name: "_erc1155TokensIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }];
                                                            name: "burnAndWithdraw";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositERC1155";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }, {
                                                                name: "_amounts";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }];
                                                            name: "depositERC1155s";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositERC20";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositERC721";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }];
                                                            name: "depositERC721s";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "depositEth";
                                                            outputs: readonly [];
                                                            stateMutability: "payable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "getApproved";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "isApprovedForAll";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "mint";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "name";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "string";
                                                                type: "string";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }, {
                                                                name: "";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }, {
                                                                name: "";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                            name: "onERC1155BatchReceived";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bytes4";
                                                                type: "bytes4";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                            name: "onERC1155Received";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bytes4";
                                                                type: "bytes4";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                            name: "onERC721Received";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bytes4";
                                                                type: "bytes4";
                                                            }];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "owner";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "ownerOf";
                                                            outputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "safeTransferFrom";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "data";
                                                                internalType: "bytes";
                                                                type: "bytes";
                                                            }];
                                                            name: "safeTransferFrom";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "operator";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "approved";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                            name: "setApprovalForAll";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "interfaceId";
                                                                internalType: "bytes4";
                                                                type: "bytes4";
                                                            }];
                                                            name: "supportsInterface";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "bool";
                                                                type: "bool";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [];
                                                            name: "symbol";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "string";
                                                                type: "string";
                                                            }];
                                                            stateMutability: "view";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "tokenURI";
                                                            outputs: readonly [{
                                                                name: "";
                                                                internalType: "string";
                                                                type: "string";
                                                            }];
                                                            stateMutability: "pure";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "transferFrom";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "newOwner";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "transferOwnership";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "withdrawERC1155";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_tokens";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }];
                                                            name: "withdrawERC1155s";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_token";
                                                                internalType: "address";
                                                                type: "address";
                                                            }];
                                                            name: "withdrawERC20";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_tokens";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }];
                                                            name: "withdrawERC20s";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collection";
                                                                internalType: "address";
                                                                type: "address";
                                                            }, {
                                                                name: "_tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "withdrawERC721";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }, {
                                                                name: "_collections";
                                                                internalType: "address[]";
                                                                type: "address[]";
                                                            }, {
                                                                name: "_tokenIds";
                                                                internalType: "uint256[]";
                                                                type: "uint256[]";
                                                            }];
                                                            name: "withdrawERC721s";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "function";
                                                            inputs: readonly [{
                                                                name: "_vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "withdrawEth";
                                                            outputs: readonly [];
                                                            stateMutability: "nonpayable";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "spender";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: true;
                                                            }];
                                                            name: "Approval";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "owner";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "operator";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "approved";
                                                                internalType: "bool";
                                                                type: "bool";
                                                                indexed: false;
                                                            }];
                                                            name: "ApprovalForAll";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "token";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC1155Deposited";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "token";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC1155Withdrawn";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "token";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC20Deposited";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "token";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "amount";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC20Withdrawn";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "collection";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC721Deposited";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }, {
                                                                name: "collection";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: false;
                                                            }, {
                                                                name: "tokenId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: false;
                                                            }];
                                                            name: "ERC721Withdrawn";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "user";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "newOwner";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }];
                                                            name: "OwnershipTransferred";
                                                        }, {
                                                            type: "event";
                                                            anonymous: false;
                                                            inputs: readonly [{
                                                                name: "from";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "to";
                                                                internalType: "address";
                                                                type: "address";
                                                                indexed: true;
                                                            }, {
                                                                name: "id";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                                indexed: true;
                                                            }];
                                                            name: "Transfer";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "AssetNotOwnedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "CollectionNotWhitelistedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "CurrencyNotWhitelistedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "InvalidCallerError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "LengthMismatchError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [{
                                                                name: "vaultId";
                                                                internalType: "uint256";
                                                                type: "uint256";
                                                            }];
                                                            name: "NotApprovedError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "VaultNotExistsError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "WithdrawingETHError";
                                                        }, {
                                                            type: "error";
                                                            inputs: readonly [];
                                                            name: "WrongMethodError";
                                                        }]
                                                        +
                                                        + +
                                                        address: `0x${string}`
                                                        +
                                                        + +
                                                        bcClient: {}
                                                        +
                                                        +

                                                        Type declaration

                                                        +
                                                          +
                                                          + +
                                                          wallet: {}
                                                          +
                                                          +

                                                          Type declaration

                                                          +
                                                            +
                                                            + +
                                                            contract: GetContractReturnType<readonly [{
                                                                type: "constructor";
                                                                inputs: readonly [{
                                                                    name: "currencyManager";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "collectionManager";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ERC1155BalanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "ERC20BalanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ERC721OwnerOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "ETH";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "spender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "approve";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "balanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_assetRecipient";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "burn";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collections";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_erc1155Tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_erc1155TokensIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "burnAndWithdraw";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC1155";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "_amounts";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "depositERC1155s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC20";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC721";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "depositERC721s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositEth";
                                                                outputs: readonly [];
                                                                stateMutability: "payable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "getApproved";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "isApprovedForAll";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "mint";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "name";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "onERC1155BatchReceived";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "onERC1155Received";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "onERC721Received";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "owner";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ownerOf";
                                                                outputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "safeTransferFrom";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "data";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "safeTransferFrom";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "operator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "approved";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                                name: "setApprovalForAll";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "interfaceId";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                name: "supportsInterface";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "symbol";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "tokenURI";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                                stateMutability: "pure";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "transferFrom";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "newOwner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "transferOwnership";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawERC1155";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "withdrawERC1155s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "withdrawERC20";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }];
                                                                name: "withdrawERC20s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawERC721";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collections";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "withdrawERC721s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawEth";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "spender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: true;
                                                                }];
                                                                name: "Approval";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "operator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "approved";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                    indexed: false;
                                                                }];
                                                                name: "ApprovalForAll";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC1155Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC1155Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC20Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC20Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC721Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC721Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "user";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "newOwner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }];
                                                                name: "OwnershipTransferred";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: true;
                                                                }];
                                                                name: "Transfer";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "AssetNotOwnedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "CollectionNotWhitelistedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "CurrencyNotWhitelistedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "InvalidCallerError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "LengthMismatchError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "NotApprovedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "VaultNotExistsError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "WithdrawingETHError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "WrongMethodError";
                                                            }], {} | {}>
                                                            +
                                                            + +
                                                            safeContractWrite: {
                                                                transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                approve: ((args, options?) => Promise<`0x${string}`>);
                                                                transferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                                safeTransferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                                setApprovalForAll: ((args, options?) => Promise<`0x${string}`>);
                                                                mint: ((args, options?) => Promise<`0x${string}`>);
                                                                burn: ((args, options?) => Promise<`0x${string}`>);
                                                                burnAndWithdraw: ((args, options?) => Promise<`0x${string}`>);
                                                                depositERC20: ((args, options?) => Promise<`0x${string}`>);
                                                                depositERC721: ((args, options?) => Promise<`0x${string}`>);
                                                                depositERC721s: ((args, options?) => Promise<`0x${string}`>);
                                                                depositEth: ((args, options?) => Promise<`0x${string}`>);
                                                                withdrawERC20: ((args, options?) => Promise<`0x${string}`>);
                                                                withdrawERC20s: ((args, options?) => Promise<`0x${string}`>);
                                                                withdrawERC721: ((args, options?) => Promise<`0x${string}`>);
                                                                withdrawERC721s: ((args, options?) => Promise<`0x${string}`>);
                                                                withdrawEth: ((args, options?) => Promise<`0x${string}`>);
                                                                depositERC1155: ((args, options?) => Promise<`0x${string}`>);
                                                                depositERC1155s: ((args, options?) => Promise<`0x${string}`>);
                                                                withdrawERC1155: ((args, options?) => Promise<`0x${string}`>);
                                                                withdrawERC1155s: ((args, options?) => Promise<`0x${string}`>);
                                                                onERC1155BatchReceived: ((args, options?) => Promise<`0x${string}`>);
                                                                onERC1155Received: ((args, options?) => Promise<`0x${string}`>);
                                                            }
                                                            +
                                                            +

                                                            Type declaration

                                                            +
                                                              +
                                                            • +
                                                              transferOwnership: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [`0x${string}`]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              onERC721Received: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              approve: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [`0x${string}`, bigint]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              transferFrom: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [`0x${string}`, `0x${string}`, bigint]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              safeTransferFrom: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: (undefined | readonly [`0x${string}`, `0x${string}`, bigint] | readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]) & Widen<readonly [`0x${string}`, `0x${string}`, bigint] | readonly [`0x${string}`, `0x${string}`, bigint, `0x${string}`]>
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              setApprovalForAll: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [`0x${string}`, Widen<boolean>] | readonly [`0x${string}`, boolean] & readonly [`0x${string}`, Widen<boolean>]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              mint: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: undefined | readonly []
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              burn: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, `0x${string}`]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              burnAndWithdraw: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, readonly `0x${string}`[], readonly bigint[], readonly `0x${string}`[], readonly `0x${string}`[], readonly bigint[]] | readonly [bigint, readonly `0x${string}`[], readonly bigint[], readonly `0x${string}`[], readonly `0x${string}`[], readonly bigint[]] & readonly [bigint, readonly `0x${string}`[], readonly bigint[], readonly `0x${string}`[], readonly `0x${string}`[], readonly bigint[]]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              depositERC20: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, `0x${string}`, bigint]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              depositERC721: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, `0x${string}`, bigint]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              depositERC721s: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, `0x${string}`, readonly bigint[]] | readonly [bigint, `0x${string}`, readonly bigint[]] & readonly [bigint, `0x${string}`, readonly bigint[]]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              depositEth: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              withdrawERC20: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, `0x${string}`]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              withdrawERC20s: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, readonly `0x${string}`[]] | readonly [bigint, readonly `0x${string}`[]] & readonly [bigint, readonly `0x${string}`[]]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              withdrawERC721: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, `0x${string}`, bigint]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              withdrawERC721s: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, readonly `0x${string}`[], readonly bigint[]] | readonly [bigint, readonly `0x${string}`[], readonly bigint[]] & readonly [bigint, readonly `0x${string}`[], readonly bigint[]]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              withdrawEth: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              depositERC1155: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, `0x${string}`, bigint, bigint]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              depositERC1155s: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, `0x${string}`, readonly bigint[], readonly bigint[]] | readonly [bigint, `0x${string}`, readonly bigint[], readonly bigint[]] & readonly [bigint, `0x${string}`, readonly bigint[], readonly bigint[]]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              withdrawERC1155: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, `0x${string}`, bigint]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              withdrawERC1155s: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [bigint, readonly `0x${string}`[], readonly bigint[]] | readonly [bigint, readonly `0x${string}`[], readonly bigint[]] & readonly [bigint, readonly `0x${string}`[], readonly bigint[]]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              onERC1155BatchReceived: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [`0x${string}`, `0x${string}`, readonly bigint[], readonly bigint[], `0x${string}`] | readonly [`0x${string}`, `0x${string}`, readonly bigint[], readonly bigint[], `0x${string}`] & readonly [`0x${string}`, `0x${string}`, readonly bigint[], readonly bigint[], `0x${string}`]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            • +
                                                            • +
                                                              onERC1155Received: ((args, options?) => Promise<`0x${string}`>)
                                                              +
                                                                +
                                                              • +
                                                                  +
                                                                • (args, options?): Promise<`0x${string}`>
                                                                • +
                                                                • +
                                                                  +

                                                                  Parameters

                                                                  +
                                                                    +
                                                                  • +
                                                                    args: readonly [`0x${string}`, `0x${string}`, bigint, bigint, `0x${string}`]
                                                                  • +
                                                                  • +
                                                                    Optional options: {
                                                                        value?: bigint;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional value?: bigint
                                                                  +

                                                                  Returns Promise<`0x${string}`>

                                                            +
                                                            + +
                                                            parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                type: "constructor";
                                                                inputs: readonly [{
                                                                    name: "currencyManager";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "collectionManager";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ERC1155BalanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "ERC20BalanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ERC721OwnerOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "ETH";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "spender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "approve";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "balanceOf";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_assetRecipient";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "burn";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collections";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_erc1155Tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_erc1155TokensIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "burnAndWithdraw";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC1155";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "_amounts";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "depositERC1155s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC20";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositERC721";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "depositERC721s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "depositEth";
                                                                outputs: readonly [];
                                                                stateMutability: "payable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "getApproved";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "isApprovedForAll";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "mint";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "name";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "onERC1155BatchReceived";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "onERC1155Received";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "onERC721Received";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "owner";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "ownerOf";
                                                                outputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "safeTransferFrom";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "data";
                                                                    internalType: "bytes";
                                                                    type: "bytes";
                                                                }];
                                                                name: "safeTransferFrom";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "operator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "approved";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                                name: "setApprovalForAll";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "interfaceId";
                                                                    internalType: "bytes4";
                                                                    type: "bytes4";
                                                                }];
                                                                name: "supportsInterface";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [];
                                                                name: "symbol";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                                stateMutability: "view";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "tokenURI";
                                                                outputs: readonly [{
                                                                    name: "";
                                                                    internalType: "string";
                                                                    type: "string";
                                                                }];
                                                                stateMutability: "pure";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "transferFrom";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "newOwner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "transferOwnership";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawERC1155";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "withdrawERC1155s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }];
                                                                name: "withdrawERC20";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_tokens";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }];
                                                                name: "withdrawERC20s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                }, {
                                                                    name: "_tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawERC721";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }, {
                                                                    name: "_collections";
                                                                    internalType: "address[]";
                                                                    type: "address[]";
                                                                }, {
                                                                    name: "_tokenIds";
                                                                    internalType: "uint256[]";
                                                                    type: "uint256[]";
                                                                }];
                                                                name: "withdrawERC721s";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "function";
                                                                inputs: readonly [{
                                                                    name: "_vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "withdrawEth";
                                                                outputs: readonly [];
                                                                stateMutability: "nonpayable";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "spender";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: true;
                                                                }];
                                                                name: "Approval";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "owner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "operator";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "approved";
                                                                    internalType: "bool";
                                                                    type: "bool";
                                                                    indexed: false;
                                                                }];
                                                                name: "ApprovalForAll";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC1155Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC1155Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC20Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "token";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "amount";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC20Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC721Deposited";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "collection";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: false;
                                                                }, {
                                                                    name: "tokenId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: false;
                                                                }];
                                                                name: "ERC721Withdrawn";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "user";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "newOwner";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }];
                                                                name: "OwnershipTransferred";
                                                            }, {
                                                                type: "event";
                                                                anonymous: false;
                                                                inputs: readonly [{
                                                                    name: "from";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "to";
                                                                    internalType: "address";
                                                                    type: "address";
                                                                    indexed: true;
                                                                }, {
                                                                    name: "id";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                    indexed: true;
                                                                }];
                                                                name: "Transfer";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "AssetNotOwnedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "CollectionNotWhitelistedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "CurrencyNotWhitelistedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "InvalidCallerError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "LengthMismatchError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [{
                                                                    name: "vaultId";
                                                                    internalType: "uint256";
                                                                    type: "uint256";
                                                                }];
                                                                name: "NotApprovedError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "VaultNotExistsError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "WithdrawingETHError";
                                                            }, {
                                                                type: "error";
                                                                inputs: readonly [];
                                                                name: "WrongMethodError";
                                                            }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn" | "ERC1155Deposited" | "ERC1155Withdrawn")[]
                                                                ? TFunctionName[number]
                                                                : TFunctionName>)
                                                            +
                                                            +

                                                            Type declaration

                                                            +
                                                              +
                                                            • +
                                                                +
                                                              • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
                                                                    type: "constructor";
                                                                    inputs: readonly [{
                                                                        name: "currencyManager";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "collectionManager";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "ERC1155BalanceOf";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "ERC20BalanceOf";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "ERC721OwnerOf";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "ETH";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "spender";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "approve";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "owner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "balanceOf";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_assetRecipient";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "burn";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collections";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }, {
                                                                        name: "_tokens";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_erc1155Tokens";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_erc1155TokensIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "burnAndWithdraw";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "depositERC1155";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }, {
                                                                        name: "_amounts";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "depositERC1155s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "depositERC20";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "depositERC721";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "depositERC721s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "depositEth";
                                                                    outputs: readonly [];
                                                                    stateMutability: "payable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "getApproved";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "isApprovedForAll";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bool";
                                                                        type: "bool";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "mint";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "name";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "string";
                                                                        type: "string";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "onERC1155BatchReceived";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bytes4";
                                                                        type: "bytes4";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "onERC1155Received";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bytes4";
                                                                        type: "bytes4";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "onERC721Received";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bytes4";
                                                                        type: "bytes4";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "owner";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "ownerOf";
                                                                    outputs: readonly [{
                                                                        name: "owner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "from";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "to";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "safeTransferFrom";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "from";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "to";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "data";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "safeTransferFrom";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "operator";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "approved";
                                                                        internalType: "bool";
                                                                        type: "bool";
                                                                    }];
                                                                    name: "setApprovalForAll";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "interfaceId";
                                                                        internalType: "bytes4";
                                                                        type: "bytes4";
                                                                    }];
                                                                    name: "supportsInterface";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bool";
                                                                        type: "bool";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "symbol";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "string";
                                                                        type: "string";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "tokenURI";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "string";
                                                                        type: "string";
                                                                    }];
                                                                    stateMutability: "pure";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "from";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "to";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "transferFrom";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "newOwner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "transferOwnership";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "withdrawERC1155";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_tokens";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "withdrawERC1155s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "withdrawERC20";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_tokens";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }];
                                                                    name: "withdrawERC20s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "withdrawERC721";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collections";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "withdrawERC721s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "withdrawEth";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "owner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "spender";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: true;
                                                                    }];
                                                                    name: "Approval";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "owner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "operator";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "approved";
                                                                        internalType: "bool";
                                                                        type: "bool";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ApprovalForAll";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC1155Deposited";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC1155Withdrawn";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC20Deposited";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC20Withdrawn";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC721Deposited";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC721Withdrawn";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "user";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "newOwner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }];
                                                                    name: "OwnershipTransferred";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "from";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "to";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: true;
                                                                    }];
                                                                    name: "Transfer";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "AssetNotOwnedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "CollectionNotWhitelistedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "CurrencyNotWhitelistedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "InvalidCallerError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "LengthMismatchError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "NotApprovedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "VaultNotExistsError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "WithdrawingETHError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "WrongMethodError";
                                                                }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn" | "ERC1155Deposited" | "ERC1155Withdrawn")[]
                                                                    ? TFunctionName[number]
                                                                    : TFunctionName>
                                                              • +
                                                              • +
                                                                +

                                                                Type Parameters

                                                                +
                                                                  +
                                                                • +

                                                                  TFunctionName extends "OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn" | "ERC1155Deposited" | "ERC1155Withdrawn"

                                                                +
                                                                +

                                                                Parameters

                                                                +
                                                                  +
                                                                • +
                                                                  eventName: TFunctionName
                                                                • +
                                                                • +
                                                                  logs: Log<bigint, number, false>[]
                                                                +

                                                                Returns ParseEventLogsReturnType<readonly [{
                                                                    type: "constructor";
                                                                    inputs: readonly [{
                                                                        name: "currencyManager";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "collectionManager";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "ERC1155BalanceOf";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "ERC20BalanceOf";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "ERC721OwnerOf";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "ETH";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "spender";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "approve";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "owner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "balanceOf";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_assetRecipient";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "burn";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collections";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }, {
                                                                        name: "_tokens";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_erc1155Tokens";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_erc1155TokensIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "burnAndWithdraw";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "depositERC1155";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }, {
                                                                        name: "_amounts";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "depositERC1155s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "depositERC20";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "depositERC721";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "depositERC721s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "depositEth";
                                                                    outputs: readonly [];
                                                                    stateMutability: "payable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "getApproved";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "isApprovedForAll";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bool";
                                                                        type: "bool";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "mint";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "name";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "string";
                                                                        type: "string";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "onERC1155BatchReceived";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bytes4";
                                                                        type: "bytes4";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "onERC1155Received";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bytes4";
                                                                        type: "bytes4";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "onERC721Received";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bytes4";
                                                                        type: "bytes4";
                                                                    }];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "owner";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "ownerOf";
                                                                    outputs: readonly [{
                                                                        name: "owner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "from";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "to";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "safeTransferFrom";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "from";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "to";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "data";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "safeTransferFrom";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "operator";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "approved";
                                                                        internalType: "bool";
                                                                        type: "bool";
                                                                    }];
                                                                    name: "setApprovalForAll";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "interfaceId";
                                                                        internalType: "bytes4";
                                                                        type: "bytes4";
                                                                    }];
                                                                    name: "supportsInterface";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bool";
                                                                        type: "bool";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "symbol";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "string";
                                                                        type: "string";
                                                                    }];
                                                                    stateMutability: "view";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "tokenURI";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "string";
                                                                        type: "string";
                                                                    }];
                                                                    stateMutability: "pure";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "from";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "to";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "transferFrom";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "newOwner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "transferOwnership";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "withdrawERC1155";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_tokens";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "withdrawERC1155s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "withdrawERC20";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_tokens";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }];
                                                                    name: "withdrawERC20s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "withdrawERC721";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_collections";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }, {
                                                                        name: "_tokenIds";
                                                                        internalType: "uint256[]";
                                                                        type: "uint256[]";
                                                                    }];
                                                                    name: "withdrawERC721s";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "withdrawEth";
                                                                    outputs: readonly [];
                                                                    stateMutability: "nonpayable";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "owner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "spender";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: true;
                                                                    }];
                                                                    name: "Approval";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "owner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "operator";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "approved";
                                                                        internalType: "bool";
                                                                        type: "bool";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ApprovalForAll";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC1155Deposited";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC1155Withdrawn";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC20Deposited";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "token";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "amount";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC20Withdrawn";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC721Deposited";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "collection";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "ERC721Withdrawn";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "user";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "newOwner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }];
                                                                    name: "OwnershipTransferred";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "from";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "to";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "id";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: true;
                                                                    }];
                                                                    name: "Transfer";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "AssetNotOwnedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "CollectionNotWhitelistedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "CurrencyNotWhitelistedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "InvalidCallerError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "LengthMismatchError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [{
                                                                        name: "vaultId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "NotApprovedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "VaultNotExistsError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "WithdrawingETHError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "WrongMethodError";
                                                                }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn" | "ERC1155Deposited" | "ERC1155Withdrawn")[]
                                                                    ? TFunctionName[number]
                                                                    : TFunctionName>

                                                            +
                                                            + +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/enums/Internal.LoanSortField.html b/docs/0.17.2/enums/Internal.LoanSortField.html new file mode 100644 index 00000000..3e99c9bc --- /dev/null +++ b/docs/0.17.2/enums/Internal.LoanSortField.html @@ -0,0 +1,278 @@ +LoanSortField | Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            + +

                                                            Enumeration LoanSortField

                                                            +
                                                            +
                                                            +
                                                            + +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            + +
                                                            AprBps: "APR_BPS"
                                                            +
                                                            + +
                                                            Duration: "DURATION"
                                                            +
                                                            + +
                                                            EffectiveAprBps: "EFFECTIVE_APR_BPS"
                                                            +
                                                            + +
                                                            EndDate: "END_DATE"
                                                            +
                                                            + +
                                                            ExpectedInterest: "EXPECTED_INTEREST"
                                                            +
                                                            + +
                                                            ExpirationDate: "EXPIRATION_DATE"
                                                            +
                                                            + +
                                                            OriginationFee: "ORIGINATION_FEE"
                                                            +
                                                            + +
                                                            PaidInterest: "PAID_INTEREST"
                                                            +
                                                            + +
                                                            PrincipalAmount: "PRINCIPAL_AMOUNT"
                                                            +
                                                            + +
                                                            RenegotiationRequested: "RENEGOTIATION_REQUESTED"
                                                            +
                                                            + +
                                                            StartTime: "START_TIME"
                                                            +
                                                            + +
                                                            TotalInterest: "TOTAL_INTEREST"
                                                            +
                                                            + +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/enums/LoanStatusType.html b/docs/0.17.2/enums/LoanStatusType.html new file mode 100644 index 00000000..dce5d500 --- /dev/null +++ b/docs/0.17.2/enums/LoanStatusType.html @@ -0,0 +1,105 @@ +LoanStatusType | Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            + +

                                                            Enumeration LoanStatusType

                                                            +
                                                            +
                                                            +
                                                            + +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            + +
                                                            LoanAuctioned: "LOAN_AUCTIONED"
                                                            +
                                                            + +
                                                            LoanAuctionedWithBuyout: "LOAN_AUCTIONED_WITH_BUYOUT"
                                                            +
                                                            + +
                                                            LoanDefaulted: "LOAN_DEFAULTED"
                                                            +
                                                            + +
                                                            LoanForeclosed: "LOAN_FORECLOSED"
                                                            +
                                                            + +
                                                            LoanInitiated: "LOAN_INITIATED"
                                                            +
                                                            + +
                                                            LoanRepaid: "LOAN_REPAID"
                                                            +
                                                            + +
                                                            LoanSentToAuction: "LOAN_SENT_TO_AUCTION"
                                                            +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/enums/MarketplaceEnum.html b/docs/0.17.2/enums/MarketplaceEnum.html new file mode 100644 index 00000000..aeb02bff --- /dev/null +++ b/docs/0.17.2/enums/MarketplaceEnum.html @@ -0,0 +1,70 @@ +MarketplaceEnum | Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            + +

                                                            Enumeration MarketplaceEnum

                                                            +
                                                            +
                                                            +
                                                            + +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            + +
                                                            Gondi: "GONDI"
                                                            +
                                                            + +
                                                            Nftfi: "NFTFI"
                                                            +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/enums/OfferStatus.html b/docs/0.17.2/enums/OfferStatus.html new file mode 100644 index 00000000..f17d1f4c --- /dev/null +++ b/docs/0.17.2/enums/OfferStatus.html @@ -0,0 +1,98 @@ +OfferStatus | Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            + +

                                                            Enumeration OfferStatus

                                                            +
                                                            +
                                                            +
                                                            + +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            + +
                                                            Active: "ACTIVE"
                                                            +
                                                            + +
                                                            Cancelled: "CANCELLED"
                                                            +
                                                            + +
                                                            Executed: "EXECUTED"
                                                            +
                                                            + +
                                                            Expired: "EXPIRED"
                                                            +
                                                            + +
                                                            Inactive: "INACTIVE"
                                                            +
                                                            + +
                                                            Outperformed: "OUTPERFORMED"
                                                            +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/enums/OffersSortField.html b/docs/0.17.2/enums/OffersSortField.html new file mode 100644 index 00000000..cea78edf --- /dev/null +++ b/docs/0.17.2/enums/OffersSortField.html @@ -0,0 +1,161 @@ +OffersSortField | Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            + +

                                                            Enumeration OffersSortField

                                                            +
                                                            +
                                                            +
                                                            + +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            + +
                                                            AprBps: "APR_BPS"
                                                            +
                                                            + +
                                                            AvailablePrincipalAmount: "AVAILABLE_PRINCIPAL_AMOUNT"
                                                            +
                                                            + +
                                                            CreatedDate: "CREATED_DATE"
                                                            +
                                                            + +
                                                            DailyInterest: "DAILY_INTEREST"
                                                            +
                                                            + +
                                                            Duration: "DURATION"
                                                            +
                                                            + +
                                                            EffectiveAprBps: "EFFECTIVE_APR_BPS"
                                                            +
                                                            + +
                                                            Expiration: "EXPIRATION"
                                                            +
                                                            + +
                                                            Fee: "FEE"
                                                            +
                                                            + +
                                                            MaxPrincipal: "MAX_PRINCIPAL"
                                                            +
                                                            + +
                                                            NetInterest: "NET_INTEREST"
                                                            +
                                                            + +
                                                            NetPrincipal: "NET_PRINCIPAL"
                                                            +
                                                            + +
                                                            PrincipalAmount: "PRINCIPAL_AMOUNT"
                                                            +
                                                            + +
                                                            Repayment: "REPAYMENT"
                                                            +
                                                            + +
                                                            Status: "STATUS"
                                                            +
                                                            + +
                                                            TotalInterest: "TOTAL_INTEREST"
                                                            +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/enums/Ordering.html b/docs/0.17.2/enums/Ordering.html new file mode 100644 index 00000000..f2616e5f --- /dev/null +++ b/docs/0.17.2/enums/Ordering.html @@ -0,0 +1,70 @@ +Ordering | Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            + +

                                                            Enumeration Ordering

                                                            +
                                                            +
                                                            +
                                                            + +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            + +
                                                            Asc: "ASC"
                                                            +
                                                            + +
                                                            Desc: "DESC"
                                                            +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/enums/TokenStandardType.html b/docs/0.17.2/enums/TokenStandardType.html new file mode 100644 index 00000000..d19262f1 --- /dev/null +++ b/docs/0.17.2/enums/TokenStandardType.html @@ -0,0 +1,77 @@ +TokenStandardType | Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            + +

                                                            Enumeration TokenStandardType

                                                            +
                                                            +
                                                            +
                                                            + +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            +
                                                            +

                                                            Enumeration Members

                                                            +
                                                            + +
                                                            Erc721: "ERC721"
                                                            +
                                                            + +
                                                            Erc1155: "ERC1155"
                                                            +
                                                            + +
                                                            OldErc721: "OLD_ERC721"
                                                            +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/index.html b/docs/0.17.2/index.html new file mode 100644 index 00000000..60083c62 --- /dev/null +++ b/docs/0.17.2/index.html @@ -0,0 +1,86 @@ +Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            +

                                                            Gondi JS SDK - v0.17.2

                                                            +

                                                            Gondi.js

                                                            A JavaScript library for crypto-native lending: borrow, lend & refinance NFTs (non-fungible tokens).

                                                            +

                                                            Table of Contents

                                                            +

                                                            Installation

                                                            You can install it via npm:

                                                            +
                                                            npm install --save gondi
                                                            # or
                                                            yarn add gondi +
                                                            +

                                                            Getting Started

                                                            To get started, you need to provide a wallet only.

                                                            +
                                                            import { Gondi } from 'gondi';
                                                            import { createWalletClient, http } from 'viem';
                                                            import { privateKeyToAccount } from 'viem/accounts';
                                                            import { mainnet } from 'viem/chains';
                                                            const transport = http('https://eth-mainnet.g.alchemy.com/v2/...');

                                                            const wallet = createWalletClient({
                                                            account: privateKeyToAccount(privateKey),
                                                            transport,
                                                            chain: mainnet,
                                                            });
                                                            const gondi = new Gondi({ wallet }); +
                                                            +

                                                            Typescript types are included in the package.

                                                            +

                                                            Examples

                                                            Getting NFT/Collection ids

                                                            We use integer ids to identify collections and NFTs. We provide helper functions to get them:

                                                            +
                                                            const nftId = await gondi.nftId({ slug: 'collection-slug', tokenId: 0n });
                                                            const collectionId = await gondi.collectionId({ slug: 'collection-slug' });
                                                            const collectionId = (
                                                            await gondi.collectionId({
                                                            contractAddress: '0x0000000000000000000000000000000000000000',
                                                            })
                                                            )[0]; // It's an array because some collections use same contract (e.g. Artblocks) +
                                                            +

                                                            Making Offers

                                                            Single NFT Offer

                                                            const offers = await gondi.makeSingleNftOffer({
                                                            nftId=1,
                                                            principalAddress="0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", // Principal currency address. (e.g. WETH)
                                                            principalAmount=1_000_000_000_000_000_000n, // Principal amount. In units of currency (e.g. WETH is wei)(e.g. 1WETH)
                                                            capacity=1_000_000_000_000_000_000n, // How much money do you want to loan in total,
                                                            // valid for collection offers.
                                                            // If you want N loans for example, it should be N*principalAmount.
                                                            fee=0n, // Origination fee.
                                                            aprBps=100n, // Apr expressed in basis points. (e.g. 1% apr)
                                                            expirationTime=1700000000n, // Expiration time expressed in seconds since epoch. (e.g. 2023/11/14)
                                                            duration=31_536_000n, // Duration expressed in secconds. (e.g. 1 year)
                                                            requiresLiquidation, // Sets the collateral to be liquidated on default.
                                                            borrowerAddress, // Optional: allow only this borrower to accept the offer.
                                                            }); +
                                                            +

                                                            Collection Offer

                                                            const offer = await gondi.makeCollectionOffer({
                                                            collectionId,
                                                            ... // Same as Single NFT Offer

                                                            }); +
                                                            +

                                                            Listing Offers

                                                            import { OffersSortField, Ordering } from 'gondi';
                                                            const offer = await gondi.offers({
                                                            cusor, // Cursor returned by previous calls.
                                                            limit, // Number results.
                                                            sortBy: {
                                                            // Sort criteria.
                                                            field: OffersSortField.CreatedDate,
                                                            order: Ordering.Asc,
                                                            },
                                                            filterBy, // Filter criteria, result is conjunction of components.
                                                            }); +
                                                            +

                                                            Listing Listings

                                                            const listings = await gondi.listings({
                                                            cusor, // Cursor returned by previous calls.
                                                            limit, // Number results.
                                                            sortBy, // Sort criteria.
                                                            filterBy, // Filter criteria, result is conjunction of components.
                                                            }); +
                                                            +
                                                            +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/interfaces/Internal.EmitLoanArgs.html b/docs/0.17.2/interfaces/Internal.EmitLoanArgs.html new file mode 100644 index 00000000..1b4d77d3 --- /dev/null +++ b/docs/0.17.2/interfaces/Internal.EmitLoanArgs.html @@ -0,0 +1,242 @@ +EmitLoanArgs | Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            + +

                                                            Interface EmitLoanArgs

                                                            +
                                                            +

                                                            Hierarchy

                                                            +
                                                              +
                                                            • EmitLoanArgs
                                                            +
                                                            +
                                                            +
                                                            + +
                                                            +
                                                            +

                                                            Properties

                                                            +
                                                            + +
                                                            offerExecution: {
                                                                offer: Omit<SingleNftOffer | Types.CollectionOffer, "nftId">;
                                                                amount?: bigint;
                                                                lenderOfferSignature: `0x${string}`;
                                                            }[]
                                                            +
                                                            +

                                                            Type declaration

                                                            +
                                                            +
                                                            + +
                                                            tokenId: bigint
                                                            +
                                                            + +
                                                            duration: bigint
                                                            +
                                                            + +
                                                            principalReceiver?: `0x${string}`
                                                            +
                                                            + +
                                                            expirationTime?: bigint
                                                            +
                                                            + +
                                                            +
                                                            \ No newline at end of file diff --git a/docs/0.17.2/interfaces/Internal.GondiProps.html b/docs/0.17.2/interfaces/Internal.GondiProps.html new file mode 100644 index 00000000..9029fd63 --- /dev/null +++ b/docs/0.17.2/interfaces/Internal.GondiProps.html @@ -0,0 +1,215 @@ +GondiProps | Gondi JS SDK - v0.17.2
                                                            +
                                                            + +
                                                            +
                                                            +
                                                            +
                                                            + +

                                                            Interface GondiProps

                                                            +
                                                            +

                                                            Hierarchy

                                                            +
                                                              +
                                                            • GondiProps
                                                            +
                                                            +
                                                            +
                                                            + +
                                                            +
                                                            +

                                                            Properties

                                                            +
                                                            +
                                                            +

                                                            Properties

                                                            +
                                                            + +
                                                            wallet: {}
                                                            +
                                                            +

                                                            Type declaration

                                                            +
                                                              +
                                                              + +
                                                              apiClient?: ApolloClient<NormalizedCacheObject>
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/interfaces/Types.ListLoansProps.html b/docs/0.17.2/interfaces/Types.ListLoansProps.html new file mode 100644 index 00000000..d97ec4fe --- /dev/null +++ b/docs/0.17.2/interfaces/Types.ListLoansProps.html @@ -0,0 +1,147 @@ +ListLoansProps | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Interface ListLoansProps

                                                              +
                                                              +

                                                              Hierarchy

                                                              +
                                                                +
                                                              • ListLoansProps
                                                              +
                                                              +
                                                              +
                                                              + +
                                                              +
                                                              +

                                                              Properties

                                                              +
                                                              + +
                                                              limit?: number
                                                              +
                                                              + +
                                                              cursor?: null | string
                                                              +
                                                              + +
                                                              borrowers?: `0x${string}`[]
                                                              +
                                                              + +
                                                              collections?: number[]
                                                              +
                                                              + +
                                                              nfts?: number[]
                                                              +
                                                              + +
                                                              statuses?: LoanStatusType[]
                                                              +
                                                              + +
                                                              sortBy?: LoanSortInput
                                                              +
                                                              + +
                                                              terms?: TermsFilter
                                                              +
                                                              + +
                                                              orderByStatuses?: boolean
                                                              +
                                                              + +
                                                              loansCurrencyAddress?: `0x${string}`
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/modules.html b/docs/0.17.2/modules.html new file mode 100644 index 00000000..eb816ab0 --- /dev/null +++ b/docs/0.17.2/modules.html @@ -0,0 +1,66 @@ +Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              +

                                                              Gondi JS SDK - v0.17.2

                                                              +
                                                              +
                                                              +

                                                              Index

                                                              +
                                                              +

                                                              Classes

                                                              +
                                                              +
                                                              +

                                                              Namespaces

                                                              +
                                                              +
                                                              +

                                                              Modules

                                                              +
                                                              +
                                                              +

                                                              Enumerations

                                                              +
                                                              +
                                                              +

                                                              Variables

                                                              +
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/modules/Internal.html b/docs/0.17.2/modules/Internal.html new file mode 100644 index 00000000..175d284e --- /dev/null +++ b/docs/0.17.2/modules/Internal.html @@ -0,0 +1,329 @@ +Internal | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Module Internal

                                                              +
                                                              +
                                                              +

                                                              Index

                                                              +
                                                              +

                                                              Classes

                                                              +
                                                              +
                                                              +

                                                              Enumerations

                                                              +
                                                              +
                                                              +

                                                              Interfaces

                                                              +
                                                              +
                                                              +

                                                              Type Aliases

                                                              +
                                                              InputMaybe +OfferValidatorInput +SingleNftSignedOfferInput +NftOrderInput +SellAndRepayOrder +HideOfferMutation +UnhideOfferMutation +MakeRefinanceOfferProps +HideRenegotiationOfferMutation +UnhideRenegotiationOfferMutation +HideOrderMutation +ShowOrderMutation +OfferFromExecutionOffer +LoanToMslLoanType +ListNftMutation +UnlistNftMutation +Exact +Auction +CreateVaultArgs +DepositERC721sArgs +DepositERC1155sArgs +BurnAndWithdrawArgs +wrapOldERC721Args +Optional +SingleNftOfferInput +MaxSeniorRepaymentArg +CollectionOfferInput +CollectionSignedOfferInput +RenegotiationOfferInput +SignedRenegotiationOfferInput +Signature +OffersSortInput +LoanSortInput +TermsFilter +UserFilter +Erc721Or1155ABI +Props +GenerateCollectionOfferHashMutation +SaveCollectionOfferMutation +GenerateSingleNftOfferHashMutation +SaveSingleNftOfferMutation +PublishSellAndRepayOrderMutation +GenerateRenegotiationOfferHashMutation +SaveRenegotiationOfferMutation +CollectionsQuery +CollectionByContractAddressQuery +CollectionsIdByContractAddressQuery +CollectionIdBySlugQuery +ListListingsQuery +ListLoansQuery +NftIdByContractAddressAndTokenIdQuery +NftIdBySlugTokenIdQuery +OwnedNftsQuery +ListOffersQuery +Maybe +Scalars +Activity +Node +Order +Currency +MultiSourceLoan +Nft +OptionalNullable +MakeOfferType +LoanV4 +LoanV5 +LoanV6 +AuctionV5 +AuctionV6 +HexString +Interval +Wallet +Loan +LoanActivity +Auction +Offer +RenegotiationRequest +LoanRepaid +Source +TopUpRequest +Collection +Asset +Listing +NftStatistics +Trait +RepayAbiTypeV4 +RepayAbiTypeV5 +RepayAbiTypeV6 +PlaceBidAbiTypeV5 +PlaceBidAbiTypeV6 +MultiSourceLoanHistory +Bid +OfferValidator +LoanEvent +ContractData +CollectionOffer +CollectionStatistics +User +Sale +CurrencyAmount +SourceHistory +CollectionOfferStatistics +LinkedWallets +UserStatistics +StatByCollection +
                                                              +
                                                              +

                                                              Variables

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/modules/Types.html b/docs/0.17.2/modules/Types.html new file mode 100644 index 00000000..4b81a4ad --- /dev/null +++ b/docs/0.17.2/modules/Types.html @@ -0,0 +1,80 @@ +Types | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              + +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Activity.html b/docs/0.17.2/types/Internal.Activity.html new file mode 100644 index 00000000..c36e94c5 --- /dev/null +++ b/docs/0.17.2/types/Internal.Activity.html @@ -0,0 +1,190 @@ +Activity | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Activity

                                                              +
                                                              Activity: {
                                                                  id: Scalars["String"];
                                                                  timestamp: Scalars["DateTime"];
                                                                  txHash?: Maybe<Scalars["Hash"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Asset.html b/docs/0.17.2/types/Internal.Asset.html new file mode 100644 index 00000000..bf99b5bf --- /dev/null +++ b/docs/0.17.2/types/Internal.Asset.html @@ -0,0 +1,196 @@ +Asset | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Asset

                                                              +
                                                              Asset: Node & {
                                                                  __typename?: "Asset";
                                                                  accessTypeName: Scalars["String"];
                                                                  cacheUrl?: Maybe<Scalars["String"]>;
                                                                  contentTypeMime: Scalars["String"];
                                                                  data: Scalars["String"];
                                                                  id: Scalars["String"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Asset"
                                                              • +
                                                              • +
                                                                accessTypeName: Scalars["String"]
                                                              • +
                                                              • +
                                                                Optional cacheUrl?: Maybe<Scalars["String"]>
                                                              • +
                                                              • +
                                                                contentTypeMime: Scalars["String"]
                                                              • +
                                                              • +
                                                                data: Scalars["String"]
                                                              • +
                                                              • +
                                                                id: Scalars["String"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Auction-1.html b/docs/0.17.2/types/Internal.Auction-1.html new file mode 100644 index 00000000..7bdbfef2 --- /dev/null +++ b/docs/0.17.2/types/Internal.Auction-1.html @@ -0,0 +1,208 @@ +Auction | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Auction

                                                              +
                                                              Auction: Node & {
                                                                  __typename?: "Auction";
                                                                  duration?: Maybe<Scalars["BigInt"]>;
                                                                  endTime?: Maybe<Scalars["DateTime"]>;
                                                                  highestBid?: Maybe<Bid>;
                                                                  id: Scalars["String"];
                                                                  loan: MultiSourceLoan;
                                                                  minBid: Scalars["BigInt"];
                                                                  originator?: Maybe<Scalars["Address"]>;
                                                                  settler?: Maybe<Scalars["Address"]>;
                                                                  startTime?: Maybe<Scalars["DateTime"]>;
                                                                  status: Scalars["String"];
                                                                  triggerFee?: Maybe<Scalars["BigInt"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Auction.html b/docs/0.17.2/types/Internal.Auction.html new file mode 100644 index 00000000..798cabec --- /dev/null +++ b/docs/0.17.2/types/Internal.Auction.html @@ -0,0 +1,181 @@ +Auction | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Auction

                                                              +
                                                              Auction: AuctionV5 | AuctionV6
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.AuctionV5.html b/docs/0.17.2/types/Internal.AuctionV5.html new file mode 100644 index 00000000..8ba5efe4 --- /dev/null +++ b/docs/0.17.2/types/Internal.AuctionV5.html @@ -0,0 +1,181 @@ +AuctionV5 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias AuctionV5

                                                              +
                                                              AuctionV5: PlaceBidAbiTypeV5[2]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.AuctionV6.html b/docs/0.17.2/types/Internal.AuctionV6.html new file mode 100644 index 00000000..59014035 --- /dev/null +++ b/docs/0.17.2/types/Internal.AuctionV6.html @@ -0,0 +1,181 @@ +AuctionV6 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias AuctionV6

                                                              +
                                                              AuctionV6: PlaceBidAbiTypeV6[2]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Bid.html b/docs/0.17.2/types/Internal.Bid.html new file mode 100644 index 00000000..416f7b9f --- /dev/null +++ b/docs/0.17.2/types/Internal.Bid.html @@ -0,0 +1,202 @@ +Bid | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Bid

                                                              +
                                                              Bid: Node & {
                                                                  __typename?: "Bid";
                                                                  amount: Scalars["BigInt"];
                                                                  auction: Auction;
                                                                  auctionId: Scalars["String"];
                                                                  bidder: Scalars["Address"];
                                                                  id: Scalars["String"];
                                                                  indexInBlock: Scalars["Int"];
                                                                  timestamp: Scalars["DateTime"];
                                                                  txHash: Scalars["Hash"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.BurnAndWithdrawArgs.html b/docs/0.17.2/types/Internal.BurnAndWithdrawArgs.html new file mode 100644 index 00000000..530128bd --- /dev/null +++ b/docs/0.17.2/types/Internal.BurnAndWithdrawArgs.html @@ -0,0 +1,196 @@ +BurnAndWithdrawArgs | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias BurnAndWithdrawArgs

                                                              +
                                                              BurnAndWithdrawArgs: {
                                                                  vaultId: bigint;
                                                                  collections: Address[];
                                                                  tokenIds: bigint[];
                                                                  tokens?: Address[];
                                                                  erc1155Collections?: Address[];
                                                                  erc1155TokenIds?: bigint[];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                vaultId: bigint
                                                              • +
                                                              • +
                                                                collections: Address[]
                                                              • +
                                                              • +
                                                                tokenIds: bigint[]
                                                              • +
                                                              • +
                                                                Optional tokens?: Address[]
                                                              • +
                                                              • +
                                                                Optional erc1155Collections?: Address[]
                                                              • +
                                                              • +
                                                                Optional erc1155TokenIds?: bigint[]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Collection.html b/docs/0.17.2/types/Internal.Collection.html new file mode 100644 index 00000000..77434c69 --- /dev/null +++ b/docs/0.17.2/types/Internal.Collection.html @@ -0,0 +1,224 @@ +Collection | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Collection

                                                              +
                                                              Collection: Node & {
                                                                  __typename?: "Collection";
                                                                  bannerImage?: Maybe<Asset>;
                                                                  collectionUrl?: Maybe<Scalars["String"]>;
                                                                  contractData: ContractData;
                                                                  description?: Maybe<Scalars["String"]>;
                                                                  discordUrl?: Maybe<Scalars["String"]>;
                                                                  externalUrl?: Maybe<Scalars["String"]>;
                                                                  id: Scalars["String"];
                                                                  image?: Maybe<Asset>;
                                                                  imageId?: Maybe<Scalars["String"]>;
                                                                  maxNetPrincipalOffer?: Maybe<CollectionOffer>;
                                                                  name?: Maybe<Scalars["String"]>;
                                                                  nftsCount?: Maybe<Scalars["Int"]>;
                                                                  slug: Scalars["String"];
                                                                  statistics: CollectionStatistics;
                                                                  twitterUsername?: Maybe<Scalars["String"]>;
                                                                  verified: Scalars["Boolean"];
                                                                  wrappedCollection?: Maybe<Collection>;
                                                                  wrappedCollectionId?: Maybe<Scalars["Int"]>;
                                                                  wrapperCollections: Collection[];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CollectionByContractAddressQuery.html b/docs/0.17.2/types/Internal.CollectionByContractAddressQuery.html new file mode 100644 index 00000000..8fe8a6e2 --- /dev/null +++ b/docs/0.17.2/types/Internal.CollectionByContractAddressQuery.html @@ -0,0 +1,188 @@ +CollectionByContractAddressQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionByContractAddressQuery

                                                              +
                                                              CollectionByContractAddressQuery: {
                                                                  __typename?: "Query";
                                                                  collection: {
                                                                      __typename?: "Collection";
                                                                      contractData: {
                                                                          __typename?: "ContractData";
                                                                          contractAddress: Address;
                                                                      };
                                                                      wrapperCollections: {
                                                                          __typename?: "Collection";
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: Address;
                                                                          };
                                                                      }[];
                                                                  }[];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                collection: {
                                                                    __typename?: "Collection";
                                                                    contractData: {
                                                                        __typename?: "ContractData";
                                                                        contractAddress: Address;
                                                                    };
                                                                    wrapperCollections: {
                                                                        __typename?: "Collection";
                                                                        contractData: {
                                                                            __typename?: "ContractData";
                                                                            contractAddress: Address;
                                                                        };
                                                                    }[];
                                                                }[]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CollectionIdBySlugQuery.html b/docs/0.17.2/types/Internal.CollectionIdBySlugQuery.html new file mode 100644 index 00000000..d902fd2c --- /dev/null +++ b/docs/0.17.2/types/Internal.CollectionIdBySlugQuery.html @@ -0,0 +1,188 @@ +CollectionIdBySlugQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionIdBySlugQuery

                                                              +
                                                              CollectionIdBySlugQuery: {
                                                                  __typename?: "Query";
                                                                  collection?: {
                                                                      __typename?: "Collection";
                                                                      id: string;
                                                                  } | null;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                Optional collection?: {
                                                                    __typename?: "Collection";
                                                                    id: string;
                                                                } | null
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CollectionOffer.html b/docs/0.17.2/types/Internal.CollectionOffer.html new file mode 100644 index 00000000..cbc349d5 --- /dev/null +++ b/docs/0.17.2/types/Internal.CollectionOffer.html @@ -0,0 +1,253 @@ +CollectionOffer | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionOffer

                                                              +
                                                              CollectionOffer: Node & Offer & {
                                                                  __typename?: "CollectionOffer";
                                                                  aprBps: Scalars["BigInt"];
                                                                  availablePrincipalAmount: Scalars["BigInt"];
                                                                  borrowerAddress?: Maybe<Scalars["Address"]>;
                                                                  capacity: Scalars["BigInt"];
                                                                  collection: Collection;
                                                                  consumedCapacity: Scalars["BigInt"];
                                                                  contractAddress: Scalars["Address"];
                                                                  createdDate?: Maybe<Scalars["DateTime"]>;
                                                                  currency: Currency;
                                                                  duration: Scalars["BigInt"];
                                                                  expirationTime: Scalars["BigInt"];
                                                                  fee: Scalars["BigInt"];
                                                                  hidden?: Maybe<Scalars["Boolean"]>;
                                                                  id: Scalars["String"];
                                                                  lenderAddress?: Maybe<Scalars["Address"]>;
                                                                  lenderAvailableBalance?: Maybe<Scalars["BigInt"]>;
                                                                  maxPrincipal: Scalars["BigInt"];
                                                                  maxSeniorRepayment: Scalars["BigInt"];
                                                                  maxTrancheFloor: Scalars["BigInt"];
                                                                  netPrincipal: Scalars["BigInt"];
                                                                  offerHash?: Maybe<Scalars["Hash"]>;
                                                                  offerId: Scalars["BigInt"];
                                                                  principalAddress: Scalars["Address"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  repayment: Scalars["BigInt"];
                                                                  requiresLiquidation?: Maybe<Scalars["Boolean"]>;
                                                                  signature?: Maybe<Scalars["Signature"]>;
                                                                  signerAddress?: Maybe<Scalars["Address"]>;
                                                                  statistics: CollectionOfferStatistics;
                                                                  status: Scalars["String"];
                                                                  validators: OfferValidator[];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CollectionOfferInput.html b/docs/0.17.2/types/Internal.CollectionOfferInput.html new file mode 100644 index 00000000..dfd1b488 --- /dev/null +++ b/docs/0.17.2/types/Internal.CollectionOfferInput.html @@ -0,0 +1,216 @@ +CollectionOfferInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionOfferInput

                                                              +
                                                              CollectionOfferInput: {
                                                                  aprBps: Scalars["BigInt"];
                                                                  borrowerAddress: Scalars["Address"];
                                                                  capacity: Scalars["BigInt"];
                                                                  collectionId: Scalars["Int"];
                                                                  contractAddress: Scalars["Address"];
                                                                  duration: Scalars["BigInt"];
                                                                  expirationTime: Scalars["BigInt"];
                                                                  fee: Scalars["BigInt"];
                                                                  lenderAddress: Scalars["Address"];
                                                                  maxSeniorRepayment?: InputMaybe<Scalars["BigInt"]>;
                                                                  maxTrancheFloor?: InputMaybe<Scalars["BigInt"]>;
                                                                  offerValidators: OfferValidatorInput[];
                                                                  principalAddress: Scalars["Address"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  requiresLiquidation?: InputMaybe<Scalars["Boolean"]>;
                                                                  signerAddress?: InputMaybe<Scalars["Address"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CollectionOfferStatistics.html b/docs/0.17.2/types/Internal.CollectionOfferStatistics.html new file mode 100644 index 00000000..0a09534a --- /dev/null +++ b/docs/0.17.2/types/Internal.CollectionOfferStatistics.html @@ -0,0 +1,190 @@ +CollectionOfferStatistics | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionOfferStatistics

                                                              +
                                                              CollectionOfferStatistics: {
                                                                  __typename?: "CollectionOfferStatistics";
                                                                  acceptedLoans: Scalars["Int"];
                                                                  consumedCapacity: Scalars["BigInt"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "CollectionOfferStatistics"
                                                              • +
                                                              • +
                                                                acceptedLoans: Scalars["Int"]
                                                              • +
                                                              • +
                                                                consumedCapacity: Scalars["BigInt"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CollectionSignedOfferInput.html b/docs/0.17.2/types/Internal.CollectionSignedOfferInput.html new file mode 100644 index 00000000..662a95b9 --- /dev/null +++ b/docs/0.17.2/types/Internal.CollectionSignedOfferInput.html @@ -0,0 +1,222 @@ +CollectionSignedOfferInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionSignedOfferInput

                                                              +
                                                              CollectionSignedOfferInput: {
                                                                  aprBps: Scalars["BigInt"];
                                                                  borrowerAddress: Scalars["Address"];
                                                                  capacity: Scalars["BigInt"];
                                                                  collectionId: Scalars["Int"];
                                                                  contractAddress: Scalars["Address"];
                                                                  duration: Scalars["BigInt"];
                                                                  expirationTime: Scalars["BigInt"];
                                                                  fee: Scalars["BigInt"];
                                                                  lenderAddress: Scalars["Address"];
                                                                  maxSeniorRepayment?: InputMaybe<Scalars["BigInt"]>;
                                                                  maxTrancheFloor?: InputMaybe<Scalars["BigInt"]>;
                                                                  offerHash: Scalars["Hash"];
                                                                  offerId: Scalars["BigInt"];
                                                                  offerValidators: OfferValidatorInput[];
                                                                  principalAddress: Scalars["Address"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  requiresLiquidation?: InputMaybe<Scalars["Boolean"]>;
                                                                  signature: Scalars["Signature"];
                                                                  signerAddress?: InputMaybe<Scalars["Address"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CollectionStatistics.html b/docs/0.17.2/types/Internal.CollectionStatistics.html new file mode 100644 index 00000000..46fd2035 --- /dev/null +++ b/docs/0.17.2/types/Internal.CollectionStatistics.html @@ -0,0 +1,244 @@ +CollectionStatistics | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionStatistics

                                                              +
                                                              CollectionStatistics: {
                                                                  __typename?: "CollectionStatistics";
                                                                  bestOffer?: Maybe<CurrencyAmount>;
                                                                  floorPrice?: Maybe<CurrencyAmount>;
                                                                  floorPrice7d?: Maybe<Scalars["Float"]>;
                                                                  floorPrice30d?: Maybe<Scalars["Float"]>;
                                                                  nftsCount?: Maybe<Scalars["Float"]>;
                                                                  numberOfOffers: Scalars["Float"];
                                                                  numberOfPricedNfts: Scalars["Int"];
                                                                  outstandingLoanCount: Scalars["Int"];
                                                                  outstandingNftsCount: Scalars["BigInt"];
                                                                  outstandingPrincipal: Scalars["BigInt"];
                                                                  percentageInOutstandingLoans: Scalars["Float"];
                                                                  repaymentRate: Scalars["Float"];
                                                                  totalLoanVolume: Scalars["BigInt"];
                                                                  totalLoanVolume1d: Scalars["BigInt"];
                                                                  totalLoanVolume1m: Scalars["BigInt"];
                                                                  totalLoanVolume1w: Scalars["BigInt"];
                                                                  totalLoanVolume1y: Scalars["BigInt"];
                                                                  totalLoanVolume2m: Scalars["BigInt"];
                                                                  totalLoanVolume3m: Scalars["BigInt"];
                                                                  totalLoanVolume4m: Scalars["BigInt"];
                                                                  totalOutstandingPrincipal: Scalars["BigInt"];
                                                                  totalVolume?: Maybe<Scalars["Float"]>;
                                                                  totalVolume1d?: Maybe<Scalars["Float"]>;
                                                                  totalVolume1m?: Maybe<Scalars["Float"]>;
                                                                  totalVolume1w?: Maybe<Scalars["Float"]>;
                                                                  totalVolume1y?: Maybe<Scalars["Float"]>;
                                                                  totalVolume2m?: Maybe<Scalars["Float"]>;
                                                                  totalVolume3m?: Maybe<Scalars["Float"]>;
                                                                  totalVolume4m?: Maybe<Scalars["Float"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CollectionsIdByContractAddressQuery.html b/docs/0.17.2/types/Internal.CollectionsIdByContractAddressQuery.html new file mode 100644 index 00000000..19c96ef9 --- /dev/null +++ b/docs/0.17.2/types/Internal.CollectionsIdByContractAddressQuery.html @@ -0,0 +1,188 @@ +CollectionsIdByContractAddressQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionsIdByContractAddressQuery

                                                              +
                                                              CollectionsIdByContractAddressQuery: {
                                                                  __typename?: "Query";
                                                                  collections: {
                                                                      __typename?: "Collection";
                                                                      id: string;
                                                                  }[];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                collections: {
                                                                    __typename?: "Collection";
                                                                    id: string;
                                                                }[]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CollectionsQuery.html b/docs/0.17.2/types/Internal.CollectionsQuery.html new file mode 100644 index 00000000..189f4a12 --- /dev/null +++ b/docs/0.17.2/types/Internal.CollectionsQuery.html @@ -0,0 +1,202 @@ +CollectionsQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionsQuery

                                                              +
                                                              CollectionsQuery: {
                                                                  __typename?: "Query";
                                                                  collections: {
                                                                      __typename?: "CollectionConnection";
                                                                      pageInfo: {
                                                                          __typename?: "PageInfo";
                                                                          endCursor?: string | null;
                                                                          hasNextPage: boolean;
                                                                      };
                                                                      edges: {
                                                                          __typename?: "CollectionEdge";
                                                                          node: {
                                                                              __typename?: "Collection";
                                                                              id: string;
                                                                              name?: string | null;
                                                                              slug: string;
                                                                              description?: string | null;
                                                                              discordUrl?: string | null;
                                                                              twitterUsername?: string | null;
                                                                              externalUrl?: string | null;
                                                                              collectionUrl?: string | null;
                                                                              verified: boolean;
                                                                              wrapperCollections: {
                                                                                  __typename?: "Collection";
                                                                                  contractData: {
                                                                                      __typename?: "ContractData";
                                                                                      contractAddress: Address;
                                                                                  };
                                                                              }[];
                                                                              image?: {
                                                                                  __typename?: "Asset";
                                                                                  cacheUrl?: string | null;
                                                                              } | null;
                                                                              bannerImage?: {
                                                                                  __typename?: "Asset";
                                                                                  cacheUrl?: string | null;
                                                                              } | null;
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  blockchain: string;
                                                                                  contractAddress: Address;
                                                                                  createdDate: Date;
                                                                                  creatorAddress?: Address | null;
                                                                              };
                                                                              statistics: {
                                                                                  __typename?: "CollectionStatistics";
                                                                                  floorPrice7d?: number | null;
                                                                                  floorPrice30d?: number | null;
                                                                                  totalVolume?: number | null;
                                                                                  totalVolume1y?: number | null;
                                                                                  totalVolume3m?: number | null;
                                                                                  totalVolume1m?: number | null;
                                                                                  totalVolume1w?: number | null;
                                                                                  totalLoanVolume: bigint;
                                                                                  totalLoanVolume1w: bigint;
                                                                                  totalLoanVolume1m: bigint;
                                                                                  totalLoanVolume3m: bigint;
                                                                                  totalLoanVolume1y: bigint;
                                                                                  numberOfPricedNfts: number;
                                                                                  nftsCount?: number | null;
                                                                                  percentageInOutstandingLoans: number;
                                                                                  repaymentRate: number;
                                                                                  numberOfOffers: number;
                                                                                  floorPrice?: {
                                                                                      __typename?: "CurrencyAmount";
                                                                                      amount: number;
                                                                                      currency: {
                                                                                          __typename?: "Currency";
                                                                                          address: Address;
                                                                                          decimals: number;
                                                                                      };
                                                                                  } | null;
                                                                                  bestOffer?: {
                                                                                      __typename?: "CurrencyAmount";
                                                                                      amount: number;
                                                                                      currency: {
                                                                                          __typename?: "Currency";
                                                                                          address: Address;
                                                                                          decimals: number;
                                                                                      };
                                                                                  } | null;
                                                                              };
                                                                          };
                                                                      }[];
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                collections: {
                                                                    __typename?: "CollectionConnection";
                                                                    pageInfo: {
                                                                        __typename?: "PageInfo";
                                                                        endCursor?: string | null;
                                                                        hasNextPage: boolean;
                                                                    };
                                                                    edges: {
                                                                        __typename?: "CollectionEdge";
                                                                        node: {
                                                                            __typename?: "Collection";
                                                                            id: string;
                                                                            name?: string | null;
                                                                            slug: string;
                                                                            description?: string | null;
                                                                            discordUrl?: string | null;
                                                                            twitterUsername?: string | null;
                                                                            externalUrl?: string | null;
                                                                            collectionUrl?: string | null;
                                                                            verified: boolean;
                                                                            wrapperCollections: {
                                                                                __typename?: "Collection";
                                                                                contractData: {
                                                                                    __typename?: "ContractData";
                                                                                    contractAddress: Address;
                                                                                };
                                                                            }[];
                                                                            image?: {
                                                                                __typename?: "Asset";
                                                                                cacheUrl?: string | null;
                                                                            } | null;
                                                                            bannerImage?: {
                                                                                __typename?: "Asset";
                                                                                cacheUrl?: string | null;
                                                                            } | null;
                                                                            contractData: {
                                                                                __typename?: "ContractData";
                                                                                blockchain: string;
                                                                                contractAddress: Address;
                                                                                createdDate: Date;
                                                                                creatorAddress?: Address | null;
                                                                            };
                                                                            statistics: {
                                                                                __typename?: "CollectionStatistics";
                                                                                floorPrice7d?: number | null;
                                                                                floorPrice30d?: number | null;
                                                                                totalVolume?: number | null;
                                                                                totalVolume1y?: number | null;
                                                                                totalVolume3m?: number | null;
                                                                                totalVolume1m?: number | null;
                                                                                totalVolume1w?: number | null;
                                                                                totalLoanVolume: bigint;
                                                                                totalLoanVolume1w: bigint;
                                                                                totalLoanVolume1m: bigint;
                                                                                totalLoanVolume3m: bigint;
                                                                                totalLoanVolume1y: bigint;
                                                                                numberOfPricedNfts: number;
                                                                                nftsCount?: number | null;
                                                                                percentageInOutstandingLoans: number;
                                                                                repaymentRate: number;
                                                                                numberOfOffers: number;
                                                                                floorPrice?: {
                                                                                    __typename?: "CurrencyAmount";
                                                                                    amount: number;
                                                                                    currency: {
                                                                                        __typename?: "Currency";
                                                                                        address: Address;
                                                                                        decimals: number;
                                                                                    };
                                                                                } | null;
                                                                                bestOffer?: {
                                                                                    __typename?: "CurrencyAmount";
                                                                                    amount: number;
                                                                                    currency: {
                                                                                        __typename?: "Currency";
                                                                                        address: Address;
                                                                                        decimals: number;
                                                                                    };
                                                                                } | null;
                                                                            };
                                                                        };
                                                                    }[];
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "CollectionConnection"
                                                                • +
                                                                • +
                                                                  pageInfo: {
                                                                      __typename?: "PageInfo";
                                                                      endCursor?: string | null;
                                                                      hasNextPage: boolean;
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "PageInfo"
                                                                  • +
                                                                  • +
                                                                    Optional endCursor?: string | null
                                                                  • +
                                                                  • +
                                                                    hasNextPage: boolean
                                                                • +
                                                                • +
                                                                  edges: {
                                                                      __typename?: "CollectionEdge";
                                                                      node: {
                                                                          __typename?: "Collection";
                                                                          id: string;
                                                                          name?: string | null;
                                                                          slug: string;
                                                                          description?: string | null;
                                                                          discordUrl?: string | null;
                                                                          twitterUsername?: string | null;
                                                                          externalUrl?: string | null;
                                                                          collectionUrl?: string | null;
                                                                          verified: boolean;
                                                                          wrapperCollections: {
                                                                              __typename?: "Collection";
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: Address;
                                                                              };
                                                                          }[];
                                                                          image?: {
                                                                              __typename?: "Asset";
                                                                              cacheUrl?: string | null;
                                                                          } | null;
                                                                          bannerImage?: {
                                                                              __typename?: "Asset";
                                                                              cacheUrl?: string | null;
                                                                          } | null;
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              blockchain: string;
                                                                              contractAddress: Address;
                                                                              createdDate: Date;
                                                                              creatorAddress?: Address | null;
                                                                          };
                                                                          statistics: {
                                                                              __typename?: "CollectionStatistics";
                                                                              floorPrice7d?: number | null;
                                                                              floorPrice30d?: number | null;
                                                                              totalVolume?: number | null;
                                                                              totalVolume1y?: number | null;
                                                                              totalVolume3m?: number | null;
                                                                              totalVolume1m?: number | null;
                                                                              totalVolume1w?: number | null;
                                                                              totalLoanVolume: bigint;
                                                                              totalLoanVolume1w: bigint;
                                                                              totalLoanVolume1m: bigint;
                                                                              totalLoanVolume3m: bigint;
                                                                              totalLoanVolume1y: bigint;
                                                                              numberOfPricedNfts: number;
                                                                              nftsCount?: number | null;
                                                                              percentageInOutstandingLoans: number;
                                                                              repaymentRate: number;
                                                                              numberOfOffers: number;
                                                                              floorPrice?: {
                                                                                  __typename?: "CurrencyAmount";
                                                                                  amount: number;
                                                                                  currency: {
                                                                                      __typename?: "Currency";
                                                                                      address: Address;
                                                                                      decimals: number;
                                                                                  };
                                                                              } | null;
                                                                              bestOffer?: {
                                                                                  __typename?: "CurrencyAmount";
                                                                                  amount: number;
                                                                                  currency: {
                                                                                      __typename?: "Currency";
                                                                                      address: Address;
                                                                                      decimals: number;
                                                                                  };
                                                                              } | null;
                                                                          };
                                                                      };
                                                                  }[]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.ContractData.html b/docs/0.17.2/types/Internal.ContractData.html new file mode 100644 index 00000000..27fdb968 --- /dev/null +++ b/docs/0.17.2/types/Internal.ContractData.html @@ -0,0 +1,198 @@ +ContractData | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias ContractData

                                                              +
                                                              ContractData: Node & {
                                                                  __typename?: "ContractData";
                                                                  blockchain: Scalars["String"];
                                                                  contractAddress: Scalars["Address"];
                                                                  createdDate: Scalars["DateTime"];
                                                                  creatorAddress?: Maybe<Scalars["Address"]>;
                                                                  id: Scalars["String"];
                                                                  standard: Scalars["String"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "ContractData"
                                                              • +
                                                              • +
                                                                blockchain: Scalars["String"]
                                                              • +
                                                              • +
                                                                contractAddress: Scalars["Address"]
                                                              • +
                                                              • +
                                                                createdDate: Scalars["DateTime"]
                                                              • +
                                                              • +
                                                                Optional creatorAddress?: Maybe<Scalars["Address"]>
                                                              • +
                                                              • +
                                                                id: Scalars["String"]
                                                              • +
                                                              • +
                                                                standard: Scalars["String"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CreateVaultArgs.html b/docs/0.17.2/types/Internal.CreateVaultArgs.html new file mode 100644 index 00000000..cf807b69 --- /dev/null +++ b/docs/0.17.2/types/Internal.CreateVaultArgs.html @@ -0,0 +1,192 @@ +CreateVaultArgs | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CreateVaultArgs

                                                              +
                                                              CreateVaultArgs: {
                                                                  collection: Address;
                                                                  tokenIds: bigint[];
                                                                  amounts: bigint[];
                                                                  standard: NftStandard;
                                                              }[]
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                collection: Address
                                                              • +
                                                              • +
                                                                tokenIds: bigint[]
                                                              • +
                                                              • +
                                                                amounts: bigint[]
                                                              • +
                                                              • +
                                                                standard: NftStandard
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Currency.html b/docs/0.17.2/types/Internal.Currency.html new file mode 100644 index 00000000..d3d027ff --- /dev/null +++ b/docs/0.17.2/types/Internal.Currency.html @@ -0,0 +1,198 @@ +Currency | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Currency

                                                              +
                                                              Currency: Node & {
                                                                  __typename?: "Currency";
                                                                  address: Scalars["Address"];
                                                                  currentEthRate?: Maybe<Scalars["Float"]>;
                                                                  currentUsdcPrice?: Maybe<Scalars["Float"]>;
                                                                  decimals: Scalars["Int"];
                                                                  id: Scalars["String"];
                                                                  symbol: Scalars["String"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.CurrencyAmount.html b/docs/0.17.2/types/Internal.CurrencyAmount.html new file mode 100644 index 00000000..602c8811 --- /dev/null +++ b/docs/0.17.2/types/Internal.CurrencyAmount.html @@ -0,0 +1,190 @@ +CurrencyAmount | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CurrencyAmount

                                                              +
                                                              CurrencyAmount: {
                                                                  __typename?: "CurrencyAmount";
                                                                  amount: Scalars["Float"];
                                                                  currency: Currency;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "CurrencyAmount"
                                                              • +
                                                              • +
                                                                amount: Scalars["Float"]
                                                              • +
                                                              • +
                                                                currency: Currency
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.DepositERC1155sArgs.html b/docs/0.17.2/types/Internal.DepositERC1155sArgs.html new file mode 100644 index 00000000..d6c3a599 --- /dev/null +++ b/docs/0.17.2/types/Internal.DepositERC1155sArgs.html @@ -0,0 +1,192 @@ +DepositERC1155sArgs | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias DepositERC1155sArgs

                                                              +
                                                              DepositERC1155sArgs: {
                                                                  vaultId: bigint;
                                                                  collection: Address;
                                                                  tokenIds: bigint[];
                                                                  amounts: bigint[];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                vaultId: bigint
                                                              • +
                                                              • +
                                                                collection: Address
                                                              • +
                                                              • +
                                                                tokenIds: bigint[]
                                                              • +
                                                              • +
                                                                amounts: bigint[]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.DepositERC721sArgs.html b/docs/0.17.2/types/Internal.DepositERC721sArgs.html new file mode 100644 index 00000000..cb5449ed --- /dev/null +++ b/docs/0.17.2/types/Internal.DepositERC721sArgs.html @@ -0,0 +1,181 @@ +DepositERC721sArgs | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias DepositERC721sArgs

                                                              +
                                                              DepositERC721sArgs: Omit<DepositERC1155sArgs, "amounts">
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Erc721Or1155ABI.html b/docs/0.17.2/types/Internal.Erc721Or1155ABI.html new file mode 100644 index 00000000..1345738a --- /dev/null +++ b/docs/0.17.2/types/Internal.Erc721Or1155ABI.html @@ -0,0 +1,181 @@ +Erc721Or1155ABI | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Erc721Or1155ABI

                                                              +
                                                              Erc721Or1155ABI: typeof erc721ABI | typeof erc1155Abi
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Exact.html b/docs/0.17.2/types/Internal.Exact.html new file mode 100644 index 00000000..d2510eab --- /dev/null +++ b/docs/0.17.2/types/Internal.Exact.html @@ -0,0 +1,186 @@ +Exact | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Exact<T>

                                                              +
                                                              Exact<T>: {
                                                                  [K in keyof T]: T[K]
                                                              }
                                                              +
                                                              +

                                                              Type Parameters

                                                              +
                                                                +
                                                              • +

                                                                T extends {
                                                                    [key: string]: unknown;
                                                                }

                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.GenerateCollectionOfferHashMutation.html b/docs/0.17.2/types/Internal.GenerateCollectionOfferHashMutation.html new file mode 100644 index 00000000..50361e8d --- /dev/null +++ b/docs/0.17.2/types/Internal.GenerateCollectionOfferHashMutation.html @@ -0,0 +1,215 @@ +GenerateCollectionOfferHashMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias GenerateCollectionOfferHashMutation

                                                              +
                                                              GenerateCollectionOfferHashMutation: {
                                                                  __typename?: "Mutation";
                                                                  offer: {
                                                                      __typename?: "CollectionOffer";
                                                                      offerHash?: Hash | null;
                                                                      offerId: bigint;
                                                                      lenderAddress?: Address | null;
                                                                      signerAddress?: Address | null;
                                                                      borrowerAddress?: Address | null;
                                                                      validators: {
                                                                          __typename?: "OfferValidator";
                                                                          validator: Address;
                                                                          arguments: Hex;
                                                                      }[];
                                                                      collection: {
                                                                          __typename?: "Collection";
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: Address;
                                                                          };
                                                                      };
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                offer: {
                                                                    __typename?: "CollectionOffer";
                                                                    offerHash?: Hash | null;
                                                                    offerId: bigint;
                                                                    lenderAddress?: Address | null;
                                                                    signerAddress?: Address | null;
                                                                    borrowerAddress?: Address | null;
                                                                    validators: {
                                                                        __typename?: "OfferValidator";
                                                                        validator: Address;
                                                                        arguments: Hex;
                                                                    }[];
                                                                    collection: {
                                                                        __typename?: "Collection";
                                                                        contractData: {
                                                                            __typename?: "ContractData";
                                                                            contractAddress: Address;
                                                                        };
                                                                    };
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "CollectionOffer"
                                                                • +
                                                                • +
                                                                  Optional offerHash?: Hash | null
                                                                • +
                                                                • +
                                                                  offerId: bigint
                                                                • +
                                                                • +
                                                                  Optional lenderAddress?: Address | null
                                                                • +
                                                                • +
                                                                  Optional signerAddress?: Address | null
                                                                • +
                                                                • +
                                                                  Optional borrowerAddress?: Address | null
                                                                • +
                                                                • +
                                                                  validators: {
                                                                      __typename?: "OfferValidator";
                                                                      validator: Address;
                                                                      arguments: Hex;
                                                                  }[]
                                                                • +
                                                                • +
                                                                  collection: {
                                                                      __typename?: "Collection";
                                                                      contractData: {
                                                                          __typename?: "ContractData";
                                                                          contractAddress: Address;
                                                                      };
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "Collection"
                                                                  • +
                                                                  • +
                                                                    contractData: {
                                                                        __typename?: "ContractData";
                                                                        contractAddress: Address;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional __typename?: "ContractData"
                                                                    • +
                                                                    • +
                                                                      contractAddress: Address
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.GenerateRenegotiationOfferHashMutation.html b/docs/0.17.2/types/Internal.GenerateRenegotiationOfferHashMutation.html new file mode 100644 index 00000000..85678668 --- /dev/null +++ b/docs/0.17.2/types/Internal.GenerateRenegotiationOfferHashMutation.html @@ -0,0 +1,210 @@ +GenerateRenegotiationOfferHashMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias GenerateRenegotiationOfferHashMutation

                                                              +
                                                              GenerateRenegotiationOfferHashMutation: {
                                                                  __typename?: "Mutation";
                                                                  offer: {
                                                                      __typename?: "Renegotiation";
                                                                      loanId: bigint;
                                                                      renegotiationId: bigint;
                                                                      offerHash?: Hash | null;
                                                                      lenderAddress?: Address | null;
                                                                      signerAddress?: Address | null;
                                                                      nft: {
                                                                          __typename?: "NFT";
                                                                          tokenId: bigint;
                                                                          collection?: {
                                                                              __typename?: "Collection";
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: Address;
                                                                              };
                                                                          } | null;
                                                                      };
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                offer: {
                                                                    __typename?: "Renegotiation";
                                                                    loanId: bigint;
                                                                    renegotiationId: bigint;
                                                                    offerHash?: Hash | null;
                                                                    lenderAddress?: Address | null;
                                                                    signerAddress?: Address | null;
                                                                    nft: {
                                                                        __typename?: "NFT";
                                                                        tokenId: bigint;
                                                                        collection?: {
                                                                            __typename?: "Collection";
                                                                            contractData: {
                                                                                __typename?: "ContractData";
                                                                                contractAddress: Address;
                                                                            };
                                                                        } | null;
                                                                    };
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "Renegotiation"
                                                                • +
                                                                • +
                                                                  loanId: bigint
                                                                • +
                                                                • +
                                                                  renegotiationId: bigint
                                                                • +
                                                                • +
                                                                  Optional offerHash?: Hash | null
                                                                • +
                                                                • +
                                                                  Optional lenderAddress?: Address | null
                                                                • +
                                                                • +
                                                                  Optional signerAddress?: Address | null
                                                                • +
                                                                • +
                                                                  nft: {
                                                                      __typename?: "NFT";
                                                                      tokenId: bigint;
                                                                      collection?: {
                                                                          __typename?: "Collection";
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: Address;
                                                                          };
                                                                      } | null;
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "NFT"
                                                                  • +
                                                                  • +
                                                                    tokenId: bigint
                                                                  • +
                                                                  • +
                                                                    Optional collection?: {
                                                                        __typename?: "Collection";
                                                                        contractData: {
                                                                            __typename?: "ContractData";
                                                                            contractAddress: Address;
                                                                        };
                                                                    } | null
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.GenerateSingleNftOfferHashMutation.html b/docs/0.17.2/types/Internal.GenerateSingleNftOfferHashMutation.html new file mode 100644 index 00000000..c9b53fb7 --- /dev/null +++ b/docs/0.17.2/types/Internal.GenerateSingleNftOfferHashMutation.html @@ -0,0 +1,212 @@ +GenerateSingleNftOfferHashMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias GenerateSingleNftOfferHashMutation

                                                              +
                                                              GenerateSingleNftOfferHashMutation: {
                                                                  __typename?: "Mutation";
                                                                  offer: {
                                                                      __typename?: "SingleNFTOffer";
                                                                      offerHash?: Hash | null;
                                                                      offerId: bigint;
                                                                      lenderAddress?: Address | null;
                                                                      signerAddress?: Address | null;
                                                                      borrowerAddress?: Address | null;
                                                                      validators: {
                                                                          __typename?: "OfferValidator";
                                                                          validator: Address;
                                                                          arguments: Hex;
                                                                      }[];
                                                                      nft: {
                                                                          __typename?: "NFT";
                                                                          tokenId: bigint;
                                                                          collection?: {
                                                                              __typename?: "Collection";
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: Address;
                                                                              };
                                                                          } | null;
                                                                      };
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                offer: {
                                                                    __typename?: "SingleNFTOffer";
                                                                    offerHash?: Hash | null;
                                                                    offerId: bigint;
                                                                    lenderAddress?: Address | null;
                                                                    signerAddress?: Address | null;
                                                                    borrowerAddress?: Address | null;
                                                                    validators: {
                                                                        __typename?: "OfferValidator";
                                                                        validator: Address;
                                                                        arguments: Hex;
                                                                    }[];
                                                                    nft: {
                                                                        __typename?: "NFT";
                                                                        tokenId: bigint;
                                                                        collection?: {
                                                                            __typename?: "Collection";
                                                                            contractData: {
                                                                                __typename?: "ContractData";
                                                                                contractAddress: Address;
                                                                            };
                                                                        } | null;
                                                                    };
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "SingleNFTOffer"
                                                                • +
                                                                • +
                                                                  Optional offerHash?: Hash | null
                                                                • +
                                                                • +
                                                                  offerId: bigint
                                                                • +
                                                                • +
                                                                  Optional lenderAddress?: Address | null
                                                                • +
                                                                • +
                                                                  Optional signerAddress?: Address | null
                                                                • +
                                                                • +
                                                                  Optional borrowerAddress?: Address | null
                                                                • +
                                                                • +
                                                                  validators: {
                                                                      __typename?: "OfferValidator";
                                                                      validator: Address;
                                                                      arguments: Hex;
                                                                  }[]
                                                                • +
                                                                • +
                                                                  nft: {
                                                                      __typename?: "NFT";
                                                                      tokenId: bigint;
                                                                      collection?: {
                                                                          __typename?: "Collection";
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: Address;
                                                                          };
                                                                      } | null;
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "NFT"
                                                                  • +
                                                                  • +
                                                                    tokenId: bigint
                                                                  • +
                                                                  • +
                                                                    Optional collection?: {
                                                                        __typename?: "Collection";
                                                                        contractData: {
                                                                            __typename?: "ContractData";
                                                                            contractAddress: Address;
                                                                        };
                                                                    } | null
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.HexString.html b/docs/0.17.2/types/Internal.HexString.html new file mode 100644 index 00000000..e366a6b5 --- /dev/null +++ b/docs/0.17.2/types/Internal.HexString.html @@ -0,0 +1,181 @@ +HexString | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias HexString

                                                              +
                                                              HexString: `0x${string}`
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.HideOfferMutation.html b/docs/0.17.2/types/Internal.HideOfferMutation.html new file mode 100644 index 00000000..2300bf83 --- /dev/null +++ b/docs/0.17.2/types/Internal.HideOfferMutation.html @@ -0,0 +1,188 @@ +HideOfferMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias HideOfferMutation

                                                              +
                                                              HideOfferMutation: {
                                                                  __typename?: "Mutation";
                                                                  hideOffer: {
                                                                      __typename?: "CollectionOffer";
                                                                      id: string;
                                                                  } | {
                                                                      __typename?: "SingleNFTOffer";
                                                                      id: string;
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                hideOffer: {
                                                                    __typename?: "CollectionOffer";
                                                                    id: string;
                                                                } | {
                                                                    __typename?: "SingleNFTOffer";
                                                                    id: string;
                                                                }
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.HideOrderMutation.html b/docs/0.17.2/types/Internal.HideOrderMutation.html new file mode 100644 index 00000000..4b6b86c1 --- /dev/null +++ b/docs/0.17.2/types/Internal.HideOrderMutation.html @@ -0,0 +1,188 @@ +HideOrderMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias HideOrderMutation

                                                              +
                                                              HideOrderMutation: {
                                                                  __typename?: "Mutation";
                                                                  hideOrder: {
                                                                      __typename?: "CollectionOrder";
                                                                      id: string;
                                                                  } | {
                                                                      __typename?: "SellAndRepayOrder";
                                                                      id: string;
                                                                  } | {
                                                                      __typename?: "SingleNFTOrder";
                                                                      id: string;
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                hideOrder: {
                                                                    __typename?: "CollectionOrder";
                                                                    id: string;
                                                                } | {
                                                                    __typename?: "SellAndRepayOrder";
                                                                    id: string;
                                                                } | {
                                                                    __typename?: "SingleNFTOrder";
                                                                    id: string;
                                                                }
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.HideRenegotiationOfferMutation.html b/docs/0.17.2/types/Internal.HideRenegotiationOfferMutation.html new file mode 100644 index 00000000..d044df7e --- /dev/null +++ b/docs/0.17.2/types/Internal.HideRenegotiationOfferMutation.html @@ -0,0 +1,193 @@ +HideRenegotiationOfferMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias HideRenegotiationOfferMutation

                                                              +
                                                              HideRenegotiationOfferMutation: {
                                                                  __typename?: "Mutation";
                                                                  hideRenegotiation: {
                                                                      __typename?: "Renegotiation";
                                                                      id: string;
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                hideRenegotiation: {
                                                                    __typename?: "Renegotiation";
                                                                    id: string;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "Renegotiation"
                                                                • +
                                                                • +
                                                                  id: string
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.InputMaybe.html b/docs/0.17.2/types/Internal.InputMaybe.html new file mode 100644 index 00000000..18564609 --- /dev/null +++ b/docs/0.17.2/types/Internal.InputMaybe.html @@ -0,0 +1,186 @@ +InputMaybe | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias InputMaybe<T>

                                                              +
                                                              InputMaybe<T>: Maybe<T>
                                                              +
                                                              +

                                                              Type Parameters

                                                              +
                                                                +
                                                              • +

                                                                T

                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Interval.html b/docs/0.17.2/types/Internal.Interval.html new file mode 100644 index 00000000..e8fcdd09 --- /dev/null +++ b/docs/0.17.2/types/Internal.Interval.html @@ -0,0 +1,188 @@ +Interval | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Interval

                                                              +
                                                              Interval: {
                                                                  max?: InputMaybe<Scalars["Float"]>;
                                                                  min?: InputMaybe<Scalars["Float"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.LinkedWallets.html b/docs/0.17.2/types/Internal.LinkedWallets.html new file mode 100644 index 00000000..767a0f6a --- /dev/null +++ b/docs/0.17.2/types/Internal.LinkedWallets.html @@ -0,0 +1,194 @@ +LinkedWallets | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias LinkedWallets

                                                              +
                                                              LinkedWallets: Node & {
                                                                  __typename?: "LinkedWallets";
                                                                  id: Scalars["String"];
                                                                  pending: Scalars["Boolean"];
                                                                  shouldAccept: Scalars["Boolean"];
                                                                  walletAddress: Scalars["String"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "LinkedWallets"
                                                              • +
                                                              • +
                                                                id: Scalars["String"]
                                                              • +
                                                              • +
                                                                pending: Scalars["Boolean"]
                                                              • +
                                                              • +
                                                                shouldAccept: Scalars["Boolean"]
                                                              • +
                                                              • +
                                                                walletAddress: Scalars["String"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.ListListingsQuery.html b/docs/0.17.2/types/Internal.ListListingsQuery.html new file mode 100644 index 00000000..dc87be53 --- /dev/null +++ b/docs/0.17.2/types/Internal.ListListingsQuery.html @@ -0,0 +1,202 @@ +ListListingsQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias ListListingsQuery

                                                              +
                                                              ListListingsQuery: {
                                                                  __typename?: "Query";
                                                                  result: {
                                                                      __typename?: "ListingConnection";
                                                                      pageInfo: {
                                                                          __typename?: "PageInfo";
                                                                          endCursor?: string | null;
                                                                          hasNextPage: boolean;
                                                                      };
                                                                      edges: {
                                                                          __typename?: "ListingEdge";
                                                                          node: {
                                                                              __typename?: "Listing";
                                                                              id: string;
                                                                              marketplaceName: MarketplaceEnum;
                                                                              createdDate: Date;
                                                                              desiredDuration?: number | null;
                                                                              desiredPrincipalAddress?: Address | null;
                                                                              user: {
                                                                                  __typename?: "User";
                                                                                  walletAddress: Address;
                                                                              };
                                                                              nft: {
                                                                                  __typename?: "NFT";
                                                                                  id: string;
                                                                                  tokenId: bigint;
                                                                                  collection?: {
                                                                                      __typename?: "Collection";
                                                                                      id: string;
                                                                                      slug: string;
                                                                                      contractData: {
                                                                                          __typename?: "ContractData";
                                                                                          contractAddress: Address;
                                                                                      };
                                                                                  } | null;
                                                                              };
                                                                          };
                                                                      }[];
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                result: {
                                                                    __typename?: "ListingConnection";
                                                                    pageInfo: {
                                                                        __typename?: "PageInfo";
                                                                        endCursor?: string | null;
                                                                        hasNextPage: boolean;
                                                                    };
                                                                    edges: {
                                                                        __typename?: "ListingEdge";
                                                                        node: {
                                                                            __typename?: "Listing";
                                                                            id: string;
                                                                            marketplaceName: MarketplaceEnum;
                                                                            createdDate: Date;
                                                                            desiredDuration?: number | null;
                                                                            desiredPrincipalAddress?: Address | null;
                                                                            user: {
                                                                                __typename?: "User";
                                                                                walletAddress: Address;
                                                                            };
                                                                            nft: {
                                                                                __typename?: "NFT";
                                                                                id: string;
                                                                                tokenId: bigint;
                                                                                collection?: {
                                                                                    __typename?: "Collection";
                                                                                    id: string;
                                                                                    slug: string;
                                                                                    contractData: {
                                                                                        __typename?: "ContractData";
                                                                                        contractAddress: Address;
                                                                                    };
                                                                                } | null;
                                                                            };
                                                                        };
                                                                    }[];
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "ListingConnection"
                                                                • +
                                                                • +
                                                                  pageInfo: {
                                                                      __typename?: "PageInfo";
                                                                      endCursor?: string | null;
                                                                      hasNextPage: boolean;
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "PageInfo"
                                                                  • +
                                                                  • +
                                                                    Optional endCursor?: string | null
                                                                  • +
                                                                  • +
                                                                    hasNextPage: boolean
                                                                • +
                                                                • +
                                                                  edges: {
                                                                      __typename?: "ListingEdge";
                                                                      node: {
                                                                          __typename?: "Listing";
                                                                          id: string;
                                                                          marketplaceName: MarketplaceEnum;
                                                                          createdDate: Date;
                                                                          desiredDuration?: number | null;
                                                                          desiredPrincipalAddress?: Address | null;
                                                                          user: {
                                                                              __typename?: "User";
                                                                              walletAddress: Address;
                                                                          };
                                                                          nft: {
                                                                              __typename?: "NFT";
                                                                              id: string;
                                                                              tokenId: bigint;
                                                                              collection?: {
                                                                                  __typename?: "Collection";
                                                                                  id: string;
                                                                                  slug: string;
                                                                                  contractData: {
                                                                                      __typename?: "ContractData";
                                                                                      contractAddress: Address;
                                                                                  };
                                                                              } | null;
                                                                          };
                                                                      };
                                                                  }[]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.ListLoansQuery.html b/docs/0.17.2/types/Internal.ListLoansQuery.html new file mode 100644 index 00000000..179123e2 --- /dev/null +++ b/docs/0.17.2/types/Internal.ListLoansQuery.html @@ -0,0 +1,204 @@ +ListLoansQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias ListLoansQuery

                                                              +
                                                              ListLoansQuery: {
                                                                  __typename?: "Query";
                                                                  loans: {
                                                                      __typename?: "MultiSourceLoanConnection";
                                                                      totalCount: number;
                                                                      pageInfo: {
                                                                          __typename?: "PageInfo";
                                                                          endCursor?: string | null;
                                                                          hasNextPage: boolean;
                                                                      };
                                                                      edges: {
                                                                          __typename?: "MultiSourceLoanEdge";
                                                                          node: {
                                                                              __typename?: "MultiSourceLoan";
                                                                              id: string;
                                                                              address: Address;
                                                                              loanId: number;
                                                                              timestamp: Date;
                                                                              txHash: Hash;
                                                                              indexInBlock: number;
                                                                              borrowerAddress: Address;
                                                                              principalAddress: Address;
                                                                              startTime: Date;
                                                                              duration: bigint;
                                                                              status: string;
                                                                              principalAmount: bigint;
                                                                              blendedAprBps: number;
                                                                              totalOriginationFee: bigint;
                                                                              protocolFee: bigint;
                                                                              offer: {
                                                                                  __typename?: "CollectionOffer";
                                                                                  offerId: bigint;
                                                                                  signerAddress?: Address | null;
                                                                              } | {
                                                                                  __typename?: "SingleNFTOffer";
                                                                                  offerId: bigint;
                                                                                  signerAddress?: Address | null;
                                                                              };
                                                                              currency: {
                                                                                  __typename?: "Currency";
                                                                                  symbol: string;
                                                                                  decimals: number;
                                                                                  address: Address;
                                                                              };
                                                                              repaidActivity?: {
                                                                                  __typename?: "LoanRepaid";
                                                                                  totalInterest: bigint;
                                                                                  timestamp: Date;
                                                                              } | null;
                                                                              nft: {
                                                                                  __typename?: "NFT";
                                                                                  id: string;
                                                                                  name?: string | null;
                                                                                  tokenId: bigint;
                                                                                  nftId: string;
                                                                                  owner?: Address | null;
                                                                                  image?: {
                                                                                      __typename?: "Asset";
                                                                                      data: string;
                                                                                      cacheUrl?: string | null;
                                                                                      contentTypeMime: string;
                                                                                      accessTypeName: string;
                                                                                  } | null;
                                                                                  collection?: {
                                                                                      __typename?: "Collection";
                                                                                      id: string;
                                                                                      slug: string;
                                                                                      name?: string | null;
                                                                                      nftsCount?: number | null;
                                                                                      contractData: {
                                                                                          __typename?: "ContractData";
                                                                                          contractAddress: Address;
                                                                                      };
                                                                                  } | null;
                                                                              };
                                                                              sources: {
                                                                                  __typename?: "Source";
                                                                                  id: string;
                                                                                  loanId: string;
                                                                                  originationFee: bigint;
                                                                                  principalAmount: bigint;
                                                                                  lenderAddress: string;
                                                                                  accruedInterest: bigint;
                                                                                  aprBps: bigint;
                                                                                  startTime: Date;
                                                                              }[];
                                                                          };
                                                                      }[];
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                loans: {
                                                                    __typename?: "MultiSourceLoanConnection";
                                                                    totalCount: number;
                                                                    pageInfo: {
                                                                        __typename?: "PageInfo";
                                                                        endCursor?: string | null;
                                                                        hasNextPage: boolean;
                                                                    };
                                                                    edges: {
                                                                        __typename?: "MultiSourceLoanEdge";
                                                                        node: {
                                                                            __typename?: "MultiSourceLoan";
                                                                            id: string;
                                                                            address: Address;
                                                                            loanId: number;
                                                                            timestamp: Date;
                                                                            txHash: Hash;
                                                                            indexInBlock: number;
                                                                            borrowerAddress: Address;
                                                                            principalAddress: Address;
                                                                            startTime: Date;
                                                                            duration: bigint;
                                                                            status: string;
                                                                            principalAmount: bigint;
                                                                            blendedAprBps: number;
                                                                            totalOriginationFee: bigint;
                                                                            protocolFee: bigint;
                                                                            offer: {
                                                                                __typename?: "CollectionOffer";
                                                                                offerId: bigint;
                                                                                signerAddress?: Address | null;
                                                                            } | {
                                                                                __typename?: "SingleNFTOffer";
                                                                                offerId: bigint;
                                                                                signerAddress?: Address | null;
                                                                            };
                                                                            currency: {
                                                                                __typename?: "Currency";
                                                                                symbol: string;
                                                                                decimals: number;
                                                                                address: Address;
                                                                            };
                                                                            repaidActivity?: {
                                                                                __typename?: "LoanRepaid";
                                                                                totalInterest: bigint;
                                                                                timestamp: Date;
                                                                            } | null;
                                                                            nft: {
                                                                                __typename?: "NFT";
                                                                                id: string;
                                                                                name?: string | null;
                                                                                tokenId: bigint;
                                                                                nftId: string;
                                                                                owner?: Address | null;
                                                                                image?: {
                                                                                    __typename?: "Asset";
                                                                                    data: string;
                                                                                    cacheUrl?: string | null;
                                                                                    contentTypeMime: string;
                                                                                    accessTypeName: string;
                                                                                } | null;
                                                                                collection?: {
                                                                                    __typename?: "Collection";
                                                                                    id: string;
                                                                                    slug: string;
                                                                                    name?: string | null;
                                                                                    nftsCount?: number | null;
                                                                                    contractData: {
                                                                                        __typename?: "ContractData";
                                                                                        contractAddress: Address;
                                                                                    };
                                                                                } | null;
                                                                            };
                                                                            sources: {
                                                                                __typename?: "Source";
                                                                                id: string;
                                                                                loanId: string;
                                                                                originationFee: bigint;
                                                                                principalAmount: bigint;
                                                                                lenderAddress: string;
                                                                                accruedInterest: bigint;
                                                                                aprBps: bigint;
                                                                                startTime: Date;
                                                                            }[];
                                                                        };
                                                                    }[];
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "MultiSourceLoanConnection"
                                                                • +
                                                                • +
                                                                  totalCount: number
                                                                • +
                                                                • +
                                                                  pageInfo: {
                                                                      __typename?: "PageInfo";
                                                                      endCursor?: string | null;
                                                                      hasNextPage: boolean;
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "PageInfo"
                                                                  • +
                                                                  • +
                                                                    Optional endCursor?: string | null
                                                                  • +
                                                                  • +
                                                                    hasNextPage: boolean
                                                                • +
                                                                • +
                                                                  edges: {
                                                                      __typename?: "MultiSourceLoanEdge";
                                                                      node: {
                                                                          __typename?: "MultiSourceLoan";
                                                                          id: string;
                                                                          address: Address;
                                                                          loanId: number;
                                                                          timestamp: Date;
                                                                          txHash: Hash;
                                                                          indexInBlock: number;
                                                                          borrowerAddress: Address;
                                                                          principalAddress: Address;
                                                                          startTime: Date;
                                                                          duration: bigint;
                                                                          status: string;
                                                                          principalAmount: bigint;
                                                                          blendedAprBps: number;
                                                                          totalOriginationFee: bigint;
                                                                          protocolFee: bigint;
                                                                          offer: {
                                                                              __typename?: "CollectionOffer";
                                                                              offerId: bigint;
                                                                              signerAddress?: Address | null;
                                                                          } | {
                                                                              __typename?: "SingleNFTOffer";
                                                                              offerId: bigint;
                                                                              signerAddress?: Address | null;
                                                                          };
                                                                          currency: {
                                                                              __typename?: "Currency";
                                                                              symbol: string;
                                                                              decimals: number;
                                                                              address: Address;
                                                                          };
                                                                          repaidActivity?: {
                                                                              __typename?: "LoanRepaid";
                                                                              totalInterest: bigint;
                                                                              timestamp: Date;
                                                                          } | null;
                                                                          nft: {
                                                                              __typename?: "NFT";
                                                                              id: string;
                                                                              name?: string | null;
                                                                              tokenId: bigint;
                                                                              nftId: string;
                                                                              owner?: Address | null;
                                                                              image?: {
                                                                                  __typename?: "Asset";
                                                                                  data: string;
                                                                                  cacheUrl?: string | null;
                                                                                  contentTypeMime: string;
                                                                                  accessTypeName: string;
                                                                              } | null;
                                                                              collection?: {
                                                                                  __typename?: "Collection";
                                                                                  id: string;
                                                                                  slug: string;
                                                                                  name?: string | null;
                                                                                  nftsCount?: number | null;
                                                                                  contractData: {
                                                                                      __typename?: "ContractData";
                                                                                      contractAddress: Address;
                                                                                  };
                                                                              } | null;
                                                                          };
                                                                          sources: {
                                                                              __typename?: "Source";
                                                                              id: string;
                                                                              loanId: string;
                                                                              originationFee: bigint;
                                                                              principalAmount: bigint;
                                                                              lenderAddress: string;
                                                                              accruedInterest: bigint;
                                                                              aprBps: bigint;
                                                                              startTime: Date;
                                                                          }[];
                                                                      };
                                                                  }[]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.ListNftMutation.html b/docs/0.17.2/types/Internal.ListNftMutation.html new file mode 100644 index 00000000..8c7ad225 --- /dev/null +++ b/docs/0.17.2/types/Internal.ListNftMutation.html @@ -0,0 +1,193 @@ +ListNftMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias ListNftMutation

                                                              +
                                                              ListNftMutation: {
                                                                  __typename?: "Mutation";
                                                                  addOrUpdateListing: {
                                                                      __typename?: "Listing";
                                                                      id: string;
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                addOrUpdateListing: {
                                                                    __typename?: "Listing";
                                                                    id: string;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "Listing"
                                                                • +
                                                                • +
                                                                  id: string
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.ListOffersQuery.html b/docs/0.17.2/types/Internal.ListOffersQuery.html new file mode 100644 index 00000000..d00ca153 --- /dev/null +++ b/docs/0.17.2/types/Internal.ListOffersQuery.html @@ -0,0 +1,202 @@ +ListOffersQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias ListOffersQuery

                                                              +
                                                              ListOffersQuery: {
                                                                  __typename?: "Query";
                                                                  result: {
                                                                      __typename?: "OfferConnection";
                                                                      pageInfo: {
                                                                          __typename?: "PageInfo";
                                                                          endCursor?: string | null;
                                                                          hasNextPage: boolean;
                                                                      };
                                                                      edges: {
                                                                          __typename?: "OfferEdge";
                                                                          node: {
                                                                              __typename?: "CollectionOffer";
                                                                              id: string;
                                                                              offerId: bigint;
                                                                              lenderAddress?: Address | null;
                                                                              borrowerAddress?: Address | null;
                                                                              signerAddress?: Address | null;
                                                                              contractAddress: Address;
                                                                              requiresLiquidation?: boolean | null;
                                                                              principalAddress: Address;
                                                                              principalAmount: bigint;
                                                                              aprBps: bigint;
                                                                              fee: bigint;
                                                                              capacity: bigint;
                                                                              expirationTime: bigint;
                                                                              duration: bigint;
                                                                              status: string;
                                                                              offerHash?: Hash | null;
                                                                              signature?: Hex | null;
                                                                              createdDate?: Date | null;
                                                                              repayment: bigint;
                                                                              hidden?: boolean | null;
                                                                              maxSeniorRepayment: bigint;
                                                                              collection: {
                                                                                  __typename?: "Collection";
                                                                                  id: string;
                                                                                  slug: string;
                                                                                  contractData: {
                                                                                      __typename?: "ContractData";
                                                                                      contractAddress: Address;
                                                                                  };
                                                                              };
                                                                              currency: {
                                                                                  __typename?: "Currency";
                                                                                  symbol: string;
                                                                                  decimals: number;
                                                                                  address: Address;
                                                                              };
                                                                              validators: {
                                                                                  __typename?: "OfferValidator";
                                                                                  arguments: Hex;
                                                                                  validator: Address;
                                                                              }[];
                                                                          } | {
                                                                              __typename?: "SingleNFTOffer";
                                                                              id: string;
                                                                              offerId: bigint;
                                                                              lenderAddress?: Address | null;
                                                                              borrowerAddress?: Address | null;
                                                                              signerAddress?: Address | null;
                                                                              contractAddress: Address;
                                                                              requiresLiquidation?: boolean | null;
                                                                              principalAddress: Address;
                                                                              principalAmount: bigint;
                                                                              aprBps: bigint;
                                                                              fee: bigint;
                                                                              capacity: bigint;
                                                                              expirationTime: bigint;
                                                                              duration: bigint;
                                                                              status: string;
                                                                              offerHash?: Hash | null;
                                                                              signature?: Hex | null;
                                                                              createdDate?: Date | null;
                                                                              repayment: bigint;
                                                                              hidden?: boolean | null;
                                                                              maxSeniorRepayment: bigint;
                                                                              nft: {
                                                                                  __typename?: "NFT";
                                                                                  id: string;
                                                                                  tokenId: bigint;
                                                                                  collection?: {
                                                                                      __typename?: "Collection";
                                                                                      id: string;
                                                                                      slug: string;
                                                                                      contractData: {
                                                                                          __typename?: "ContractData";
                                                                                          contractAddress: Address;
                                                                                      };
                                                                                  } | null;
                                                                              };
                                                                              currency: {
                                                                                  __typename?: "Currency";
                                                                                  symbol: string;
                                                                                  decimals: number;
                                                                                  address: Address;
                                                                              };
                                                                              validators: {
                                                                                  __typename?: "OfferValidator";
                                                                                  arguments: Hex;
                                                                                  validator: Address;
                                                                              }[];
                                                                          };
                                                                      }[];
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                result: {
                                                                    __typename?: "OfferConnection";
                                                                    pageInfo: {
                                                                        __typename?: "PageInfo";
                                                                        endCursor?: string | null;
                                                                        hasNextPage: boolean;
                                                                    };
                                                                    edges: {
                                                                        __typename?: "OfferEdge";
                                                                        node: {
                                                                            __typename?: "CollectionOffer";
                                                                            id: string;
                                                                            offerId: bigint;
                                                                            lenderAddress?: Address | null;
                                                                            borrowerAddress?: Address | null;
                                                                            signerAddress?: Address | null;
                                                                            contractAddress: Address;
                                                                            requiresLiquidation?: boolean | null;
                                                                            principalAddress: Address;
                                                                            principalAmount: bigint;
                                                                            aprBps: bigint;
                                                                            fee: bigint;
                                                                            capacity: bigint;
                                                                            expirationTime: bigint;
                                                                            duration: bigint;
                                                                            status: string;
                                                                            offerHash?: Hash | null;
                                                                            signature?: Hex | null;
                                                                            createdDate?: Date | null;
                                                                            repayment: bigint;
                                                                            hidden?: boolean | null;
                                                                            maxSeniorRepayment: bigint;
                                                                            collection: {
                                                                                __typename?: "Collection";
                                                                                id: string;
                                                                                slug: string;
                                                                                contractData: {
                                                                                    __typename?: "ContractData";
                                                                                    contractAddress: Address;
                                                                                };
                                                                            };
                                                                            currency: {
                                                                                __typename?: "Currency";
                                                                                symbol: string;
                                                                                decimals: number;
                                                                                address: Address;
                                                                            };
                                                                            validators: {
                                                                                __typename?: "OfferValidator";
                                                                                arguments: Hex;
                                                                                validator: Address;
                                                                            }[];
                                                                        } | {
                                                                            __typename?: "SingleNFTOffer";
                                                                            id: string;
                                                                            offerId: bigint;
                                                                            lenderAddress?: Address | null;
                                                                            borrowerAddress?: Address | null;
                                                                            signerAddress?: Address | null;
                                                                            contractAddress: Address;
                                                                            requiresLiquidation?: boolean | null;
                                                                            principalAddress: Address;
                                                                            principalAmount: bigint;
                                                                            aprBps: bigint;
                                                                            fee: bigint;
                                                                            capacity: bigint;
                                                                            expirationTime: bigint;
                                                                            duration: bigint;
                                                                            status: string;
                                                                            offerHash?: Hash | null;
                                                                            signature?: Hex | null;
                                                                            createdDate?: Date | null;
                                                                            repayment: bigint;
                                                                            hidden?: boolean | null;
                                                                            maxSeniorRepayment: bigint;
                                                                            nft: {
                                                                                __typename?: "NFT";
                                                                                id: string;
                                                                                tokenId: bigint;
                                                                                collection?: {
                                                                                    __typename?: "Collection";
                                                                                    id: string;
                                                                                    slug: string;
                                                                                    contractData: {
                                                                                        __typename?: "ContractData";
                                                                                        contractAddress: Address;
                                                                                    };
                                                                                } | null;
                                                                            };
                                                                            currency: {
                                                                                __typename?: "Currency";
                                                                                symbol: string;
                                                                                decimals: number;
                                                                                address: Address;
                                                                            };
                                                                            validators: {
                                                                                __typename?: "OfferValidator";
                                                                                arguments: Hex;
                                                                                validator: Address;
                                                                            }[];
                                                                        };
                                                                    }[];
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "OfferConnection"
                                                                • +
                                                                • +
                                                                  pageInfo: {
                                                                      __typename?: "PageInfo";
                                                                      endCursor?: string | null;
                                                                      hasNextPage: boolean;
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "PageInfo"
                                                                  • +
                                                                  • +
                                                                    Optional endCursor?: string | null
                                                                  • +
                                                                  • +
                                                                    hasNextPage: boolean
                                                                • +
                                                                • +
                                                                  edges: {
                                                                      __typename?: "OfferEdge";
                                                                      node: {
                                                                          __typename?: "CollectionOffer";
                                                                          id: string;
                                                                          offerId: bigint;
                                                                          lenderAddress?: Address | null;
                                                                          borrowerAddress?: Address | null;
                                                                          signerAddress?: Address | null;
                                                                          contractAddress: Address;
                                                                          requiresLiquidation?: boolean | null;
                                                                          principalAddress: Address;
                                                                          principalAmount: bigint;
                                                                          aprBps: bigint;
                                                                          fee: bigint;
                                                                          capacity: bigint;
                                                                          expirationTime: bigint;
                                                                          duration: bigint;
                                                                          status: string;
                                                                          offerHash?: Hash | null;
                                                                          signature?: Hex | null;
                                                                          createdDate?: Date | null;
                                                                          repayment: bigint;
                                                                          hidden?: boolean | null;
                                                                          maxSeniorRepayment: bigint;
                                                                          collection: {
                                                                              __typename?: "Collection";
                                                                              id: string;
                                                                              slug: string;
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: Address;
                                                                              };
                                                                          };
                                                                          currency: {
                                                                              __typename?: "Currency";
                                                                              symbol: string;
                                                                              decimals: number;
                                                                              address: Address;
                                                                          };
                                                                          validators: {
                                                                              __typename?: "OfferValidator";
                                                                              arguments: Hex;
                                                                              validator: Address;
                                                                          }[];
                                                                      } | {
                                                                          __typename?: "SingleNFTOffer";
                                                                          id: string;
                                                                          offerId: bigint;
                                                                          lenderAddress?: Address | null;
                                                                          borrowerAddress?: Address | null;
                                                                          signerAddress?: Address | null;
                                                                          contractAddress: Address;
                                                                          requiresLiquidation?: boolean | null;
                                                                          principalAddress: Address;
                                                                          principalAmount: bigint;
                                                                          aprBps: bigint;
                                                                          fee: bigint;
                                                                          capacity: bigint;
                                                                          expirationTime: bigint;
                                                                          duration: bigint;
                                                                          status: string;
                                                                          offerHash?: Hash | null;
                                                                          signature?: Hex | null;
                                                                          createdDate?: Date | null;
                                                                          repayment: bigint;
                                                                          hidden?: boolean | null;
                                                                          maxSeniorRepayment: bigint;
                                                                          nft: {
                                                                              __typename?: "NFT";
                                                                              id: string;
                                                                              tokenId: bigint;
                                                                              collection?: {
                                                                                  __typename?: "Collection";
                                                                                  id: string;
                                                                                  slug: string;
                                                                                  contractData: {
                                                                                      __typename?: "ContractData";
                                                                                      contractAddress: Address;
                                                                                  };
                                                                              } | null;
                                                                          };
                                                                          currency: {
                                                                              __typename?: "Currency";
                                                                              symbol: string;
                                                                              decimals: number;
                                                                              address: Address;
                                                                          };
                                                                          validators: {
                                                                              __typename?: "OfferValidator";
                                                                              arguments: Hex;
                                                                              validator: Address;
                                                                          }[];
                                                                      };
                                                                  }[]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Listing.html b/docs/0.17.2/types/Internal.Listing.html new file mode 100644 index 00000000..d51b36e6 --- /dev/null +++ b/docs/0.17.2/types/Internal.Listing.html @@ -0,0 +1,202 @@ +Listing | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Listing

                                                              +
                                                              Listing: Node & {
                                                                  __typename?: "Listing";
                                                                  createdDate: Scalars["DateTime"];
                                                                  desiredDuration?: Maybe<Scalars["Int"]>;
                                                                  desiredPrincipalAddress?: Maybe<Scalars["Address"]>;
                                                                  expirationDate: Scalars["DateTime"];
                                                                  id: Scalars["String"];
                                                                  marketplaceName: MarketplaceEnum;
                                                                  nft: Nft;
                                                                  user: User;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Loan.html b/docs/0.17.2/types/Internal.Loan.html new file mode 100644 index 00000000..ec978e81 --- /dev/null +++ b/docs/0.17.2/types/Internal.Loan.html @@ -0,0 +1,227 @@ +Loan | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Loan

                                                              +
                                                              Loan: {
                                                                  activities: LoanActivity[];
                                                                  address: Scalars["Address"];
                                                                  borrowerAddress: Scalars["Address"];
                                                                  contractStartTime: Scalars["DateTime"];
                                                                  currency: Currency;
                                                                  duration: Scalars["BigInt"];
                                                                  id: Scalars["String"];
                                                                  indexInBlock: Scalars["Int"];
                                                                  loanId: Scalars["Int"];
                                                                  offer: Offer;
                                                                  offerIds: Scalars["String"][];
                                                                  principalAddress: Scalars["Address"];
                                                                  protocolFee: Scalars["BigInt"];
                                                                  repaidActivity?: Maybe<LoanRepaid>;
                                                                  repaymentTime?: Maybe<Scalars["DateTime"]>;
                                                                  startTime: Scalars["DateTime"];
                                                                  status: Scalars["String"];
                                                                  timestamp: Scalars["DateTime"];
                                                                  txHash: Scalars["Hash"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                activities: LoanActivity[]
                                                              • +
                                                              • +
                                                                address: Scalars["Address"]
                                                              • +
                                                              • +
                                                                borrowerAddress: Scalars["Address"]
                                                              • +
                                                              • +
                                                                contractStartTime: Scalars["DateTime"]
                                                              • +
                                                              • +
                                                                currency: Currency
                                                              • +
                                                              • +
                                                                duration: Scalars["BigInt"]
                                                              • +
                                                              • +
                                                                id: Scalars["String"]
                                                              • +
                                                              • +
                                                                indexInBlock: Scalars["Int"]
                                                              • +
                                                              • +
                                                                loanId: Scalars["Int"]
                                                              • +
                                                              • +
                                                                offer: Offer
                                                                +

                                                                Deprecated field. Use offerIds to return loan offer ids instead.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use offerIds to return loan offer ids instead.

                                                                +
                                                              • +
                                                              • +
                                                                offerIds: Scalars["String"][]
                                                              • +
                                                              • +
                                                                principalAddress: Scalars["Address"]
                                                              • +
                                                              • +
                                                                protocolFee: Scalars["BigInt"]
                                                              • +
                                                              • +
                                                                Optional repaidActivity?: Maybe<LoanRepaid>
                                                              • +
                                                              • +
                                                                Optional repaymentTime?: Maybe<Scalars["DateTime"]>
                                                              • +
                                                              • +
                                                                startTime: Scalars["DateTime"]
                                                              • +
                                                              • +
                                                                status: Scalars["String"]
                                                              • +
                                                              • +
                                                                timestamp: Scalars["DateTime"]
                                                              • +
                                                              • +
                                                                txHash: Scalars["Hash"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.LoanActivity.html b/docs/0.17.2/types/Internal.LoanActivity.html new file mode 100644 index 00000000..4c975e59 --- /dev/null +++ b/docs/0.17.2/types/Internal.LoanActivity.html @@ -0,0 +1,206 @@ +LoanActivity | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias LoanActivity

                                                              +
                                                              LoanActivity: {
                                                                  activityType: Scalars["String"];
                                                                  eventType: Scalars["String"];
                                                                  id: Scalars["String"];
                                                                  indexInBlock: Scalars["Int"];
                                                                  loan: Loan;
                                                                  loanId: Scalars["String"];
                                                                  multiSourceLoanHistory: MultiSourceLoanHistory;
                                                                  nextActivity?: Maybe<LoanActivity>;
                                                                  prevActivity?: Maybe<LoanActivity>;
                                                                  timestamp: Scalars["DateTime"];
                                                                  txHash: Scalars["Hash"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.LoanEvent.html b/docs/0.17.2/types/Internal.LoanEvent.html new file mode 100644 index 00000000..19abeeb0 --- /dev/null +++ b/docs/0.17.2/types/Internal.LoanEvent.html @@ -0,0 +1,194 @@ +LoanEvent | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias LoanEvent

                                                              +
                                                              LoanEvent: {
                                                                  eventType: Scalars["String"];
                                                                  id: Scalars["String"];
                                                                  loan: Loan;
                                                                  loanId: Scalars["String"];
                                                                  timestamp: Scalars["DateTime"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.LoanRepaid.html b/docs/0.17.2/types/Internal.LoanRepaid.html new file mode 100644 index 00000000..50041935 --- /dev/null +++ b/docs/0.17.2/types/Internal.LoanRepaid.html @@ -0,0 +1,210 @@ +LoanRepaid | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias LoanRepaid

                                                              +
                                                              LoanRepaid: LoanActivity & LoanEvent & Node & {
                                                                  __typename?: "LoanRepaid";
                                                                  activityType: Scalars["String"];
                                                                  eventType: Scalars["String"];
                                                                  id: Scalars["String"];
                                                                  indexInBlock: Scalars["Int"];
                                                                  loan: Loan;
                                                                  loanId: Scalars["String"];
                                                                  multiSourceLoanHistory: MultiSourceLoanHistory;
                                                                  nextActivity?: Maybe<LoanActivity>;
                                                                  prevActivity?: Maybe<LoanActivity>;
                                                                  timestamp: Scalars["DateTime"];
                                                                  totalInterest: Scalars["BigInt"];
                                                                  txHash: Scalars["Hash"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.LoanSortInput.html b/docs/0.17.2/types/Internal.LoanSortInput.html new file mode 100644 index 00000000..5ce9bbf5 --- /dev/null +++ b/docs/0.17.2/types/Internal.LoanSortInput.html @@ -0,0 +1,188 @@ +LoanSortInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias LoanSortInput

                                                              +
                                                              LoanSortInput: {
                                                                  field: LoanSortField;
                                                                  order: Ordering;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.LoanToMslLoanType.html b/docs/0.17.2/types/Internal.LoanToMslLoanType.html new file mode 100644 index 00000000..4e795051 --- /dev/null +++ b/docs/0.17.2/types/Internal.LoanToMslLoanType.html @@ -0,0 +1,181 @@ +LoanToMslLoanType | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias LoanToMslLoanType

                                                              +
                                                              LoanToMslLoanType: Optional<LoanV4, "nftCollateralAddress"> | Optional<LoanV5, "nftCollateralAddress"> | Optional<LoanV6, "nftCollateralAddress">
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.LoanV4.html b/docs/0.17.2/types/Internal.LoanV4.html new file mode 100644 index 00000000..2f1f871d --- /dev/null +++ b/docs/0.17.2/types/Internal.LoanV4.html @@ -0,0 +1,186 @@ +LoanV4 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias LoanV4

                                                              +
                                                              LoanV4: RepayAbiTypeV4[2] & {
                                                                  contractAddress: Address;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                contractAddress: Address
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.LoanV5.html b/docs/0.17.2/types/Internal.LoanV5.html new file mode 100644 index 00000000..f09748b5 --- /dev/null +++ b/docs/0.17.2/types/Internal.LoanV5.html @@ -0,0 +1,188 @@ +LoanV5 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias LoanV5

                                                              +
                                                              LoanV5: RepayAbiTypeV5[0]["loan"] & {
                                                                  contractAddress: Address;
                                                                  startTime: Date | bigint;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                contractAddress: Address
                                                              • +
                                                              • +
                                                                startTime: Date | bigint
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.LoanV6.html b/docs/0.17.2/types/Internal.LoanV6.html new file mode 100644 index 00000000..d7bf82e6 --- /dev/null +++ b/docs/0.17.2/types/Internal.LoanV6.html @@ -0,0 +1,190 @@ +LoanV6 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias LoanV6

                                                              +
                                                              LoanV6: RepayAbiTypeV6[0]["loan"] & {
                                                                  contractAddress: Address;
                                                                  startTime: Date | bigint;
                                                                  contractStartTime: Date | bigint;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                contractAddress: Address
                                                              • +
                                                              • +
                                                                startTime: Date | bigint
                                                              • +
                                                              • +
                                                                contractStartTime: Date | bigint
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.MakeOfferType.html b/docs/0.17.2/types/Internal.MakeOfferType.html new file mode 100644 index 00000000..b3353d3b --- /dev/null +++ b/docs/0.17.2/types/Internal.MakeOfferType.html @@ -0,0 +1,181 @@ +MakeOfferType | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias MakeOfferType

                                                              +
                                                              MakeOfferType: Omit<Awaited<ReturnType<Gondi["makeSingleNftOffer"]>>, "nftId"> | Omit<Awaited<ReturnType<Gondi["makeCollectionOffer"]>>, "collectionId">
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.MakeRefinanceOfferProps.html b/docs/0.17.2/types/Internal.MakeRefinanceOfferProps.html new file mode 100644 index 00000000..65cdb16d --- /dev/null +++ b/docs/0.17.2/types/Internal.MakeRefinanceOfferProps.html @@ -0,0 +1,188 @@ +MakeRefinanceOfferProps | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias MakeRefinanceOfferProps

                                                              +
                                                              MakeRefinanceOfferProps: {
                                                                  renegotiation: RenegotiationInput;
                                                                  contractAddress: Address;
                                                              } & ({
                                                                  skipSignature?: never;
                                                                  withFallbackOffer?: never;
                                                                  principalAddress?: never;
                                                                  nftId?: never;
                                                              } | {
                                                                  skipSignature: true;
                                                                  withFallbackOffer?: never;
                                                                  principalAddress?: never;
                                                                  nftId?: never;
                                                              } | {
                                                                  skipSignature?: never;
                                                                  withFallbackOffer: true;
                                                                  principalAddress: Address;
                                                                  nftId: number;
                                                              })
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.MaxSeniorRepaymentArg.html b/docs/0.17.2/types/Internal.MaxSeniorRepaymentArg.html new file mode 100644 index 00000000..4268fb48 --- /dev/null +++ b/docs/0.17.2/types/Internal.MaxSeniorRepaymentArg.html @@ -0,0 +1,186 @@ +MaxSeniorRepaymentArg | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias MaxSeniorRepaymentArg

                                                              +
                                                              MaxSeniorRepaymentArg: {
                                                                  maxSeniorRepayment: Exclude<SingleNftOfferInput["maxSeniorRepayment"], null | undefined>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Maybe.html b/docs/0.17.2/types/Internal.Maybe.html new file mode 100644 index 00000000..d0e1f728 --- /dev/null +++ b/docs/0.17.2/types/Internal.Maybe.html @@ -0,0 +1,186 @@ +Maybe | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Maybe<T>

                                                              +
                                                              Maybe<T>: T | null
                                                              +
                                                              +

                                                              Type Parameters

                                                              +
                                                                +
                                                              • +

                                                                T

                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.MultiSourceLoan.html b/docs/0.17.2/types/Internal.MultiSourceLoan.html new file mode 100644 index 00000000..ffb58dd6 --- /dev/null +++ b/docs/0.17.2/types/Internal.MultiSourceLoan.html @@ -0,0 +1,253 @@ +MultiSourceLoan | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias MultiSourceLoan

                                                              +
                                                              MultiSourceLoan: Loan & Node & {
                                                                  __typename?: "MultiSourceLoan";
                                                                  activities: LoanActivity[];
                                                                  address: Scalars["Address"];
                                                                  auction?: Maybe<Auction>;
                                                                  blendedAprBps: Scalars["Float"];
                                                                  borrowerAddress: Scalars["Address"];
                                                                  contractStartTime: Scalars["DateTime"];
                                                                  currency: Currency;
                                                                  duration: Scalars["BigInt"];
                                                                  durationFromRenegotiationOrStart: Scalars["BigInt"];
                                                                  endDate: Scalars["DateTime"];
                                                                  id: Scalars["String"];
                                                                  indexInBlock: Scalars["Int"];
                                                                  lastRenegotiationDate?: Maybe<Scalars["DateTime"]>;
                                                                  loanId: Scalars["Int"];
                                                                  nft: Nft;
                                                                  offer: Offer;
                                                                  offerIds: Scalars["String"][];
                                                                  principalAddress: Scalars["Address"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  protocolFee: Scalars["BigInt"];
                                                                  renegotiationCount: Scalars["Int"];
                                                                  renegotiationRequest?: Maybe<RenegotiationRequest>;
                                                                  repaidActivity?: Maybe<LoanRepaid>;
                                                                  repaymentTime?: Maybe<Scalars["DateTime"]>;
                                                                  sources: Source[];
                                                                  startTime: Scalars["DateTime"];
                                                                  status: Scalars["String"];
                                                                  timestamp: Scalars["DateTime"];
                                                                  topUpRequest?: Maybe<TopUpRequest>;
                                                                  totalOriginationFee: Scalars["BigInt"];
                                                                  txHash: Scalars["Hash"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.MultiSourceLoanHistory.html b/docs/0.17.2/types/Internal.MultiSourceLoanHistory.html new file mode 100644 index 00000000..8402dc62 --- /dev/null +++ b/docs/0.17.2/types/Internal.MultiSourceLoanHistory.html @@ -0,0 +1,212 @@ +MultiSourceLoanHistory | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias MultiSourceLoanHistory

                                                              +
                                                              MultiSourceLoanHistory: Node & {
                                                                  __typename?: "MultiSourceLoanHistory";
                                                                  activity: LoanActivity;
                                                                  activityId: Scalars["String"];
                                                                  borrowerAddress: Scalars["String"];
                                                                  currency: Currency;
                                                                  duration: Scalars["BigInt"];
                                                                  id: Scalars["String"];
                                                                  loanId: Scalars["Int"];
                                                                  nft: Nft;
                                                                  offerIds: Scalars["String"][];
                                                                  principalAddress: Scalars["Address"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  sources: SourceHistory[];
                                                                  startTime: Scalars["DateTime"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Nft.html b/docs/0.17.2/types/Internal.Nft.html new file mode 100644 index 00000000..6a5a12bf --- /dev/null +++ b/docs/0.17.2/types/Internal.Nft.html @@ -0,0 +1,232 @@ +Nft | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Nft

                                                              +
                                                              Nft: Node & {
                                                                  __typename?: "NFT";
                                                                  activeLoan?: Maybe<Loan>;
                                                                  collection?: Maybe<Collection>;
                                                                  collectionId?: Maybe<Scalars["Int"]>;
                                                                  createdDate: Scalars["DateTime"];
                                                                  description?: Maybe<Scalars["String"]>;
                                                                  id: Scalars["String"];
                                                                  image?: Maybe<Asset>;
                                                                  isFlagged?: Maybe<Scalars["Boolean"]>;
                                                                  listed?: Maybe<Listing>;
                                                                  marketPlaceOfPrice?: Maybe<Scalars["String"]>;
                                                                  name?: Maybe<Scalars["String"]>;
                                                                  nftId: Scalars["String"];
                                                                  owner?: Maybe<Scalars["Address"]>;
                                                                  price?: Maybe<Scalars["BigInt"]>;
                                                                  priceCurrencyAddress?: Maybe<Scalars["String"]>;
                                                                  rarityRank?: Maybe<Scalars["Int"]>;
                                                                  rarityScore?: Maybe<Scalars["Float"]>;
                                                                  statistics: NftStatistics;
                                                                  tokenId: Scalars["BigInt"];
                                                                  traits: Trait[];
                                                                  url?: Maybe<Scalars["String"]>;
                                                                  wrappedCount: Scalars["Int"][];
                                                                  wrapsNfts?: Maybe<Nft[]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.NftIdByContractAddressAndTokenIdQuery.html b/docs/0.17.2/types/Internal.NftIdByContractAddressAndTokenIdQuery.html new file mode 100644 index 00000000..543faf06 --- /dev/null +++ b/docs/0.17.2/types/Internal.NftIdByContractAddressAndTokenIdQuery.html @@ -0,0 +1,188 @@ +NftIdByContractAddressAndTokenIdQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias NftIdByContractAddressAndTokenIdQuery

                                                              +
                                                              NftIdByContractAddressAndTokenIdQuery: {
                                                                  __typename?: "Query";
                                                                  nft?: {
                                                                      __typename?: "NFT";
                                                                      id: string;
                                                                  } | null;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                Optional nft?: {
                                                                    __typename?: "NFT";
                                                                    id: string;
                                                                } | null
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.NftIdBySlugTokenIdQuery.html b/docs/0.17.2/types/Internal.NftIdBySlugTokenIdQuery.html new file mode 100644 index 00000000..2fba93ff --- /dev/null +++ b/docs/0.17.2/types/Internal.NftIdBySlugTokenIdQuery.html @@ -0,0 +1,188 @@ +NftIdBySlugTokenIdQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias NftIdBySlugTokenIdQuery

                                                              +
                                                              NftIdBySlugTokenIdQuery: {
                                                                  __typename?: "Query";
                                                                  nft?: {
                                                                      __typename?: "NFT";
                                                                      id: string;
                                                                  } | null;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                Optional nft?: {
                                                                    __typename?: "NFT";
                                                                    id: string;
                                                                } | null
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.NftOrderInput.html b/docs/0.17.2/types/Internal.NftOrderInput.html new file mode 100644 index 00000000..f8061a09 --- /dev/null +++ b/docs/0.17.2/types/Internal.NftOrderInput.html @@ -0,0 +1,206 @@ +NftOrderInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias NftOrderInput

                                                              +
                                                              NftOrderInput: {
                                                                  amount: Scalars["BigInt"];
                                                                  contractAddress: Scalars["Address"];
                                                                  currencyAddress: Scalars["Address"];
                                                                  expirationTime: Scalars["BigInt"];
                                                                  isAsk: Scalars["Boolean"];
                                                                  repaymentSignature?: InputMaybe<Scalars["Signature"]>;
                                                                  replaceOrderId?: InputMaybe<Scalars["Int"]>;
                                                                  signature?: InputMaybe<Scalars["Signature"]>;
                                                                  startTime: Scalars["BigInt"];
                                                                  taker?: InputMaybe<Scalars["Address"]>;
                                                                  tokenId: Scalars["BigInt"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.NftStatistics.html b/docs/0.17.2/types/Internal.NftStatistics.html new file mode 100644 index 00000000..5d728293 --- /dev/null +++ b/docs/0.17.2/types/Internal.NftStatistics.html @@ -0,0 +1,194 @@ +NftStatistics | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias NftStatistics

                                                              +
                                                              NftStatistics: {
                                                                  __typename?: "NftStatistics";
                                                                  lastSale?: Maybe<Sale>;
                                                                  loansTotalVolume: Scalars["BigInt"];
                                                                  numberOfOffers: Scalars["Float"];
                                                                  topTraitFloorPrice?: Maybe<CurrencyAmount>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Node.html b/docs/0.17.2/types/Internal.Node.html new file mode 100644 index 00000000..1dcee943 --- /dev/null +++ b/docs/0.17.2/types/Internal.Node.html @@ -0,0 +1,186 @@ +Node | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Node

                                                              +
                                                              Node: {
                                                                  id: Scalars["String"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Offer.html b/docs/0.17.2/types/Internal.Offer.html new file mode 100644 index 00000000..304fc199 --- /dev/null +++ b/docs/0.17.2/types/Internal.Offer.html @@ -0,0 +1,247 @@ +Offer | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Offer

                                                              +
                                                              Offer: {
                                                                  aprBps: Scalars["BigInt"];
                                                                  availablePrincipalAmount: Scalars["BigInt"];
                                                                  borrowerAddress?: Maybe<Scalars["Address"]>;
                                                                  capacity: Scalars["BigInt"];
                                                                  consumedCapacity: Scalars["BigInt"];
                                                                  contractAddress: Scalars["Address"];
                                                                  createdDate?: Maybe<Scalars["DateTime"]>;
                                                                  currency: Currency;
                                                                  duration: Scalars["BigInt"];
                                                                  expirationTime: Scalars["BigInt"];
                                                                  fee: Scalars["BigInt"];
                                                                  hidden?: Maybe<Scalars["Boolean"]>;
                                                                  id: Scalars["String"];
                                                                  lenderAddress?: Maybe<Scalars["Address"]>;
                                                                  lenderAvailableBalance?: Maybe<Scalars["BigInt"]>;
                                                                  maxPrincipal: Scalars["BigInt"];
                                                                  maxSeniorRepayment: Scalars["BigInt"];
                                                                  maxTrancheFloor: Scalars["BigInt"];
                                                                  netPrincipal: Scalars["BigInt"];
                                                                  offerHash?: Maybe<Scalars["Hash"]>;
                                                                  offerId: Scalars["BigInt"];
                                                                  principalAddress: Scalars["Address"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  repayment: Scalars["BigInt"];
                                                                  requiresLiquidation?: Maybe<Scalars["Boolean"]>;
                                                                  signature?: Maybe<Scalars["Signature"]>;
                                                                  signerAddress?: Maybe<Scalars["Address"]>;
                                                                  status: Scalars["String"];
                                                                  validators: OfferValidator[];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.OfferFromExecutionOffer.html b/docs/0.17.2/types/Internal.OfferFromExecutionOffer.html new file mode 100644 index 00000000..93ec2ef3 --- /dev/null +++ b/docs/0.17.2/types/Internal.OfferFromExecutionOffer.html @@ -0,0 +1,181 @@ +OfferFromExecutionOffer | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias OfferFromExecutionOffer

                                                              +
                                                              OfferFromExecutionOffer: OptionalNullable<MakeOfferType, "borrowerAddress" | "lenderAddress" | "offerHash" | "signature">
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.OfferValidator.html b/docs/0.17.2/types/Internal.OfferValidator.html new file mode 100644 index 00000000..269d467c --- /dev/null +++ b/docs/0.17.2/types/Internal.OfferValidator.html @@ -0,0 +1,194 @@ +OfferValidator | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias OfferValidator

                                                              +
                                                              OfferValidator: Node & {
                                                                  __typename?: "OfferValidator";
                                                                  arguments: Scalars["Hex"];
                                                                  id: Scalars["String"];
                                                                  offerId: Scalars["String"];
                                                                  validator: Scalars["Address"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "OfferValidator"
                                                              • +
                                                              • +
                                                                arguments: Scalars["Hex"]
                                                              • +
                                                              • +
                                                                id: Scalars["String"]
                                                              • +
                                                              • +
                                                                offerId: Scalars["String"]
                                                              • +
                                                              • +
                                                                validator: Scalars["Address"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.OfferValidatorInput.html b/docs/0.17.2/types/Internal.OfferValidatorInput.html new file mode 100644 index 00000000..28e9a403 --- /dev/null +++ b/docs/0.17.2/types/Internal.OfferValidatorInput.html @@ -0,0 +1,188 @@ +OfferValidatorInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias OfferValidatorInput

                                                              +
                                                              OfferValidatorInput: {
                                                                  arguments: Scalars["Hex"];
                                                                  validator: Scalars["Address"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.OffersSortInput.html b/docs/0.17.2/types/Internal.OffersSortInput.html new file mode 100644 index 00000000..b1366d2c --- /dev/null +++ b/docs/0.17.2/types/Internal.OffersSortInput.html @@ -0,0 +1,192 @@ +OffersSortInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias OffersSortInput

                                                              +
                                                              OffersSortInput: {
                                                                  durationOfInterest?: InputMaybe<Scalars["Int"]>;
                                                                  field: OffersSortField;
                                                                  order: Ordering;
                                                                  principalOfInterest?: InputMaybe<Scalars["BigInt"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Optional.html b/docs/0.17.2/types/Internal.Optional.html new file mode 100644 index 00000000..24ec7a1a --- /dev/null +++ b/docs/0.17.2/types/Internal.Optional.html @@ -0,0 +1,188 @@ +Optional | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Optional<T, K>

                                                              +
                                                              Optional<T, K>: Pick<Partial<T>, K> & Omit<T, K>
                                                              +
                                                              +

                                                              Type Parameters

                                                              +
                                                                +
                                                              • +

                                                                T

                                                              • +
                                                              • +

                                                                K extends keyof T

                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.OptionalNullable.html b/docs/0.17.2/types/Internal.OptionalNullable.html new file mode 100644 index 00000000..b7f7c328 --- /dev/null +++ b/docs/0.17.2/types/Internal.OptionalNullable.html @@ -0,0 +1,188 @@ +OptionalNullable | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias OptionalNullable<T, K>

                                                              +
                                                              OptionalNullable<T, K>: Omit<T, K> & {
                                                                  [P in K]?: T[P] | null
                                                              }
                                                              +
                                                              +

                                                              Type Parameters

                                                              +
                                                                +
                                                              • +

                                                                T

                                                              • +
                                                              • +

                                                                K extends keyof T

                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Order.html b/docs/0.17.2/types/Internal.Order.html new file mode 100644 index 00000000..9d179dbe --- /dev/null +++ b/docs/0.17.2/types/Internal.Order.html @@ -0,0 +1,226 @@ +Order | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Order

                                                              +
                                                              Order: {
                                                                  createdDate: Scalars["DateTime"];
                                                                  currency: Currency;
                                                                  currencyAddress: Scalars["Address"];
                                                                  expiration?: Maybe<Scalars["DateTime"]>;
                                                                  fees: Scalars["BigInt"];
                                                                  hidden: Scalars["Boolean"];
                                                                  id: Scalars["String"];
                                                                  isAsk: Scalars["Boolean"];
                                                                  isPrivate: Scalars["Boolean"];
                                                                  maker: Scalars["Address"];
                                                                  marketPlace: Scalars["String"];
                                                                  netAmount: Scalars["BigInt"];
                                                                  nonce: Scalars["BigInt"];
                                                                  orderType: Scalars["String"];
                                                                  price: Scalars["BigInt"];
                                                                  signature: Scalars["Signature"];
                                                                  startTime: Scalars["DateTime"];
                                                                  status: Scalars["String"];
                                                                  taker: Scalars["Address"];
                                                                  timestamp: Scalars["DateTime"];
                                                                  txHash?: Maybe<Scalars["Hash"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.OwnedNftsQuery.html b/docs/0.17.2/types/Internal.OwnedNftsQuery.html new file mode 100644 index 00000000..1f7d1d0b --- /dev/null +++ b/docs/0.17.2/types/Internal.OwnedNftsQuery.html @@ -0,0 +1,202 @@ +OwnedNftsQuery | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias OwnedNftsQuery

                                                              +
                                                              OwnedNftsQuery: {
                                                                  __typename?: "Query";
                                                                  ownedNfts: {
                                                                      __typename?: "NFTConnection";
                                                                      pageInfo: {
                                                                          __typename?: "PageInfo";
                                                                          endCursor?: string | null;
                                                                          hasNextPage: boolean;
                                                                      };
                                                                      edges: {
                                                                          __typename?: "NFTEdge";
                                                                          node: {
                                                                              __typename?: "NFT";
                                                                              id: string;
                                                                              tokenId: bigint;
                                                                              price?: bigint | null;
                                                                              priceCurrencyAddress?: string | null;
                                                                              collection?: {
                                                                                  __typename?: "Collection";
                                                                                  id: string;
                                                                                  contractData: {
                                                                                      __typename?: "ContractData";
                                                                                      contractAddress: Address;
                                                                                  };
                                                                                  wrapperCollections: {
                                                                                      __typename?: "Collection";
                                                                                      contractData: {
                                                                                          __typename?: "ContractData";
                                                                                          contractAddress: Address;
                                                                                      };
                                                                                  }[];
                                                                              } | null;
                                                                              activeLoan?: {
                                                                                  __typename?: "MultiSourceLoan";
                                                                                  id: string;
                                                                              } | null;
                                                                              statistics: {
                                                                                  __typename?: "NftStatistics";
                                                                                  lastSale?: {
                                                                                      __typename?: "Sale";
                                                                                      order: {
                                                                                          __typename?: "CollectionOrder";
                                                                                          price: bigint;
                                                                                          currency: {
                                                                                              __typename?: "Currency";
                                                                                              address: Address;
                                                                                              decimals: number;
                                                                                          };
                                                                                      } | {
                                                                                          __typename?: "SellAndRepayOrder";
                                                                                          price: bigint;
                                                                                          currency: {
                                                                                              __typename?: "Currency";
                                                                                              address: Address;
                                                                                              decimals: number;
                                                                                          };
                                                                                      } | {
                                                                                          __typename?: "SingleNFTOrder";
                                                                                          price: bigint;
                                                                                          currency: {
                                                                                              __typename?: "Currency";
                                                                                              address: Address;
                                                                                              decimals: number;
                                                                                          };
                                                                                      };
                                                                                  } | null;
                                                                                  topTraitFloorPrice?: {
                                                                                      __typename?: "CurrencyAmount";
                                                                                      amount: number;
                                                                                      currency: {
                                                                                          __typename?: "Currency";
                                                                                          address: Address;
                                                                                          decimals: number;
                                                                                      };
                                                                                  } | null;
                                                                              };
                                                                          };
                                                                      }[];
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Query"
                                                              • +
                                                              • +
                                                                ownedNfts: {
                                                                    __typename?: "NFTConnection";
                                                                    pageInfo: {
                                                                        __typename?: "PageInfo";
                                                                        endCursor?: string | null;
                                                                        hasNextPage: boolean;
                                                                    };
                                                                    edges: {
                                                                        __typename?: "NFTEdge";
                                                                        node: {
                                                                            __typename?: "NFT";
                                                                            id: string;
                                                                            tokenId: bigint;
                                                                            price?: bigint | null;
                                                                            priceCurrencyAddress?: string | null;
                                                                            collection?: {
                                                                                __typename?: "Collection";
                                                                                id: string;
                                                                                contractData: {
                                                                                    __typename?: "ContractData";
                                                                                    contractAddress: Address;
                                                                                };
                                                                                wrapperCollections: {
                                                                                    __typename?: "Collection";
                                                                                    contractData: {
                                                                                        __typename?: "ContractData";
                                                                                        contractAddress: Address;
                                                                                    };
                                                                                }[];
                                                                            } | null;
                                                                            activeLoan?: {
                                                                                __typename?: "MultiSourceLoan";
                                                                                id: string;
                                                                            } | null;
                                                                            statistics: {
                                                                                __typename?: "NftStatistics";
                                                                                lastSale?: {
                                                                                    __typename?: "Sale";
                                                                                    order: {
                                                                                        __typename?: "CollectionOrder";
                                                                                        price: bigint;
                                                                                        currency: {
                                                                                            __typename?: "Currency";
                                                                                            address: Address;
                                                                                            decimals: number;
                                                                                        };
                                                                                    } | {
                                                                                        __typename?: "SellAndRepayOrder";
                                                                                        price: bigint;
                                                                                        currency: {
                                                                                            __typename?: "Currency";
                                                                                            address: Address;
                                                                                            decimals: number;
                                                                                        };
                                                                                    } | {
                                                                                        __typename?: "SingleNFTOrder";
                                                                                        price: bigint;
                                                                                        currency: {
                                                                                            __typename?: "Currency";
                                                                                            address: Address;
                                                                                            decimals: number;
                                                                                        };
                                                                                    };
                                                                                } | null;
                                                                                topTraitFloorPrice?: {
                                                                                    __typename?: "CurrencyAmount";
                                                                                    amount: number;
                                                                                    currency: {
                                                                                        __typename?: "Currency";
                                                                                        address: Address;
                                                                                        decimals: number;
                                                                                    };
                                                                                } | null;
                                                                            };
                                                                        };
                                                                    }[];
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "NFTConnection"
                                                                • +
                                                                • +
                                                                  pageInfo: {
                                                                      __typename?: "PageInfo";
                                                                      endCursor?: string | null;
                                                                      hasNextPage: boolean;
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "PageInfo"
                                                                  • +
                                                                  • +
                                                                    Optional endCursor?: string | null
                                                                  • +
                                                                  • +
                                                                    hasNextPage: boolean
                                                                • +
                                                                • +
                                                                  edges: {
                                                                      __typename?: "NFTEdge";
                                                                      node: {
                                                                          __typename?: "NFT";
                                                                          id: string;
                                                                          tokenId: bigint;
                                                                          price?: bigint | null;
                                                                          priceCurrencyAddress?: string | null;
                                                                          collection?: {
                                                                              __typename?: "Collection";
                                                                              id: string;
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: Address;
                                                                              };
                                                                              wrapperCollections: {
                                                                                  __typename?: "Collection";
                                                                                  contractData: {
                                                                                      __typename?: "ContractData";
                                                                                      contractAddress: Address;
                                                                                  };
                                                                              }[];
                                                                          } | null;
                                                                          activeLoan?: {
                                                                              __typename?: "MultiSourceLoan";
                                                                              id: string;
                                                                          } | null;
                                                                          statistics: {
                                                                              __typename?: "NftStatistics";
                                                                              lastSale?: {
                                                                                  __typename?: "Sale";
                                                                                  order: {
                                                                                      __typename?: "CollectionOrder";
                                                                                      price: bigint;
                                                                                      currency: {
                                                                                          __typename?: "Currency";
                                                                                          address: Address;
                                                                                          decimals: number;
                                                                                      };
                                                                                  } | {
                                                                                      __typename?: "SellAndRepayOrder";
                                                                                      price: bigint;
                                                                                      currency: {
                                                                                          __typename?: "Currency";
                                                                                          address: Address;
                                                                                          decimals: number;
                                                                                      };
                                                                                  } | {
                                                                                      __typename?: "SingleNFTOrder";
                                                                                      price: bigint;
                                                                                      currency: {
                                                                                          __typename?: "Currency";
                                                                                          address: Address;
                                                                                          decimals: number;
                                                                                      };
                                                                                  };
                                                                              } | null;
                                                                              topTraitFloorPrice?: {
                                                                                  __typename?: "CurrencyAmount";
                                                                                  amount: number;
                                                                                  currency: {
                                                                                      __typename?: "Currency";
                                                                                      address: Address;
                                                                                      decimals: number;
                                                                                  };
                                                                              } | null;
                                                                          };
                                                                      };
                                                                  }[]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.PlaceBidAbiTypeV5.html b/docs/0.17.2/types/Internal.PlaceBidAbiTypeV5.html new file mode 100644 index 00000000..33a9b89a --- /dev/null +++ b/docs/0.17.2/types/Internal.PlaceBidAbiTypeV5.html @@ -0,0 +1,181 @@ +PlaceBidAbiTypeV5 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias PlaceBidAbiTypeV5

                                                              +
                                                              PlaceBidAbiTypeV5: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof auctionLoanLiquidatorABI, "placeBid">["inputs"]>
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.PlaceBidAbiTypeV6.html b/docs/0.17.2/types/Internal.PlaceBidAbiTypeV6.html new file mode 100644 index 00000000..2b9716d5 --- /dev/null +++ b/docs/0.17.2/types/Internal.PlaceBidAbiTypeV6.html @@ -0,0 +1,181 @@ +PlaceBidAbiTypeV6 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias PlaceBidAbiTypeV6

                                                              +
                                                              PlaceBidAbiTypeV6: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof auctionLoanLiquidatorAbi, "placeBid">["inputs"]>
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Props.html b/docs/0.17.2/types/Internal.Props.html new file mode 100644 index 00000000..dd637ec8 --- /dev/null +++ b/docs/0.17.2/types/Internal.Props.html @@ -0,0 +1,188 @@ +Props | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Props

                                                              +
                                                              Props: {
                                                                  apiClient?: ApolloClient<NormalizedCacheObject>;
                                                                  wallet: Wallet;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional apiClient?: ApolloClient<NormalizedCacheObject>
                                                              • +
                                                              • +
                                                                wallet: Wallet
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.PublishSellAndRepayOrderMutation.html b/docs/0.17.2/types/Internal.PublishSellAndRepayOrderMutation.html new file mode 100644 index 00000000..8f4b3065 --- /dev/null +++ b/docs/0.17.2/types/Internal.PublishSellAndRepayOrderMutation.html @@ -0,0 +1,188 @@ +PublishSellAndRepayOrderMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias PublishSellAndRepayOrderMutation

                                                              +
                                                              PublishSellAndRepayOrderMutation: {
                                                                  __typename?: "Mutation";
                                                                  result: {
                                                                      __typename?: "SellAndRepayOrder";
                                                                      id: string;
                                                                      status: string;
                                                                      signature: Hex;
                                                                      repaymentCalldata: Hex;
                                                                      cancelCalldata: Hex;
                                                                      marketPlaceAddress: Address;
                                                                  } | {
                                                                      __typename?: "SignatureRequest";
                                                                      key: string;
                                                                      typedData: {
                                                                          __typename?: "TypedData";
                                                                          types: object;
                                                                          primaryType: string;
                                                                          domain: object;
                                                                          message: object;
                                                                      };
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                result: {
                                                                    __typename?: "SellAndRepayOrder";
                                                                    id: string;
                                                                    status: string;
                                                                    signature: Hex;
                                                                    repaymentCalldata: Hex;
                                                                    cancelCalldata: Hex;
                                                                    marketPlaceAddress: Address;
                                                                } | {
                                                                    __typename?: "SignatureRequest";
                                                                    key: string;
                                                                    typedData: {
                                                                        __typename?: "TypedData";
                                                                        types: object;
                                                                        primaryType: string;
                                                                        domain: object;
                                                                        message: object;
                                                                    };
                                                                }
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.RenegotiationOfferInput.html b/docs/0.17.2/types/Internal.RenegotiationOfferInput.html new file mode 100644 index 00000000..9fb195e0 --- /dev/null +++ b/docs/0.17.2/types/Internal.RenegotiationOfferInput.html @@ -0,0 +1,210 @@ +RenegotiationOfferInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias RenegotiationOfferInput

                                                              +
                                                              RenegotiationOfferInput: {
                                                                  aprBps: Scalars["BigInt"];
                                                                  duration: Scalars["BigInt"];
                                                                  expirationTime: Scalars["BigInt"];
                                                                  feeAmount: Scalars["BigInt"];
                                                                  isAddNewTranche?: InputMaybe<Scalars["Boolean"]>;
                                                                  lenderAddress: Scalars["Address"];
                                                                  loanId: Scalars["String"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  requiresLiquidation?: InputMaybe<Scalars["Boolean"]>;
                                                                  signerAddress?: InputMaybe<Scalars["Address"]>;
                                                                  strictImprovement?: InputMaybe<Scalars["Boolean"]>;
                                                                  targetPrincipal?: InputMaybe<Scalars["BigInt"][]>;
                                                                  trancheIndex?: InputMaybe<Scalars["BigInt"][]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.RenegotiationRequest.html b/docs/0.17.2/types/Internal.RenegotiationRequest.html new file mode 100644 index 00000000..57992fe9 --- /dev/null +++ b/docs/0.17.2/types/Internal.RenegotiationRequest.html @@ -0,0 +1,200 @@ +RenegotiationRequest | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias RenegotiationRequest

                                                              +
                                                              RenegotiationRequest: Node & {
                                                                  __typename?: "RenegotiationRequest";
                                                                  createdDate: Scalars["DateTime"];
                                                                  desiredAprBps?: Maybe<Scalars["BigInt"]>;
                                                                  desiredDuration?: Maybe<Scalars["BigInt"]>;
                                                                  desiredPrincipalAmount?: Maybe<Scalars["BigInt"]>;
                                                                  expirationDate: Scalars["DateTime"];
                                                                  id: Scalars["String"];
                                                                  loanId: Scalars["String"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "RenegotiationRequest"
                                                              • +
                                                              • +
                                                                createdDate: Scalars["DateTime"]
                                                              • +
                                                              • +
                                                                Optional desiredAprBps?: Maybe<Scalars["BigInt"]>
                                                              • +
                                                              • +
                                                                Optional desiredDuration?: Maybe<Scalars["BigInt"]>
                                                              • +
                                                              • +
                                                                Optional desiredPrincipalAmount?: Maybe<Scalars["BigInt"]>
                                                              • +
                                                              • +
                                                                expirationDate: Scalars["DateTime"]
                                                              • +
                                                              • +
                                                                id: Scalars["String"]
                                                              • +
                                                              • +
                                                                loanId: Scalars["String"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.RepayAbiTypeV4.html b/docs/0.17.2/types/Internal.RepayAbiTypeV4.html new file mode 100644 index 00000000..98136ad6 --- /dev/null +++ b/docs/0.17.2/types/Internal.RepayAbiTypeV4.html @@ -0,0 +1,181 @@ +RepayAbiTypeV4 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias RepayAbiTypeV4

                                                              +
                                                              RepayAbiTypeV4: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof multiSourceLoanABI, "repayLoan">["inputs"]>
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.RepayAbiTypeV5.html b/docs/0.17.2/types/Internal.RepayAbiTypeV5.html new file mode 100644 index 00000000..9ca1f907 --- /dev/null +++ b/docs/0.17.2/types/Internal.RepayAbiTypeV5.html @@ -0,0 +1,181 @@ +RepayAbiTypeV5 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias RepayAbiTypeV5

                                                              +
                                                              RepayAbiTypeV5: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof multiSourceLoanABI, "repayLoan">["inputs"]>
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.RepayAbiTypeV6.html b/docs/0.17.2/types/Internal.RepayAbiTypeV6.html new file mode 100644 index 00000000..b9a25e85 --- /dev/null +++ b/docs/0.17.2/types/Internal.RepayAbiTypeV6.html @@ -0,0 +1,181 @@ +RepayAbiTypeV6 | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias RepayAbiTypeV6

                                                              +
                                                              RepayAbiTypeV6: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof multiSourceLoanAbi, "repayLoan">["inputs"]>
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Sale.html b/docs/0.17.2/types/Internal.Sale.html new file mode 100644 index 00000000..f67a82d2 --- /dev/null +++ b/docs/0.17.2/types/Internal.Sale.html @@ -0,0 +1,200 @@ +Sale | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Sale

                                                              +
                                                              Sale: Activity & Node & {
                                                                  __typename?: "Sale";
                                                                  id: Scalars["String"];
                                                                  nft: Nft;
                                                                  order: Order;
                                                                  orderId: Scalars["String"];
                                                                  taker: Scalars["String"];
                                                                  timestamp: Scalars["DateTime"];
                                                                  txHash?: Maybe<Scalars["Hash"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.SaveCollectionOfferMutation.html b/docs/0.17.2/types/Internal.SaveCollectionOfferMutation.html new file mode 100644 index 00000000..1e644a02 --- /dev/null +++ b/docs/0.17.2/types/Internal.SaveCollectionOfferMutation.html @@ -0,0 +1,207 @@ +SaveCollectionOfferMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias SaveCollectionOfferMutation

                                                              +
                                                              SaveCollectionOfferMutation: {
                                                                  __typename?: "Mutation";
                                                                  offer: {
                                                                      __typename?: "CollectionOffer";
                                                                      id: string;
                                                                      status: string;
                                                                      collection: {
                                                                          __typename?: "Collection";
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: Address;
                                                                          };
                                                                      };
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                offer: {
                                                                    __typename?: "CollectionOffer";
                                                                    id: string;
                                                                    status: string;
                                                                    collection: {
                                                                        __typename?: "Collection";
                                                                        contractData: {
                                                                            __typename?: "ContractData";
                                                                            contractAddress: Address;
                                                                        };
                                                                    };
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "CollectionOffer"
                                                                • +
                                                                • +
                                                                  id: string
                                                                • +
                                                                • +
                                                                  status: string
                                                                • +
                                                                • +
                                                                  collection: {
                                                                      __typename?: "Collection";
                                                                      contractData: {
                                                                          __typename?: "ContractData";
                                                                          contractAddress: Address;
                                                                      };
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "Collection"
                                                                  • +
                                                                  • +
                                                                    contractData: {
                                                                        __typename?: "ContractData";
                                                                        contractAddress: Address;
                                                                    }
                                                                    +
                                                                      +
                                                                    • +
                                                                      Optional __typename?: "ContractData"
                                                                    • +
                                                                    • +
                                                                      contractAddress: Address
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.SaveRenegotiationOfferMutation.html b/docs/0.17.2/types/Internal.SaveRenegotiationOfferMutation.html new file mode 100644 index 00000000..7ec4fd68 --- /dev/null +++ b/docs/0.17.2/types/Internal.SaveRenegotiationOfferMutation.html @@ -0,0 +1,195 @@ +SaveRenegotiationOfferMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias SaveRenegotiationOfferMutation

                                                              +
                                                              SaveRenegotiationOfferMutation: {
                                                                  __typename?: "Mutation";
                                                                  renegotiation: {
                                                                      __typename?: "Renegotiation";
                                                                      id: string;
                                                                      status: string;
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                renegotiation: {
                                                                    __typename?: "Renegotiation";
                                                                    id: string;
                                                                    status: string;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "Renegotiation"
                                                                • +
                                                                • +
                                                                  id: string
                                                                • +
                                                                • +
                                                                  status: string
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.SaveSingleNftOfferMutation.html b/docs/0.17.2/types/Internal.SaveSingleNftOfferMutation.html new file mode 100644 index 00000000..4c2242ac --- /dev/null +++ b/docs/0.17.2/types/Internal.SaveSingleNftOfferMutation.html @@ -0,0 +1,204 @@ +SaveSingleNftOfferMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias SaveSingleNftOfferMutation

                                                              +
                                                              SaveSingleNftOfferMutation: {
                                                                  __typename?: "Mutation";
                                                                  offer: {
                                                                      __typename?: "SingleNFTOffer";
                                                                      id: string;
                                                                      status: string;
                                                                      nft: {
                                                                          __typename?: "NFT";
                                                                          tokenId: bigint;
                                                                          collection?: {
                                                                              __typename?: "Collection";
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: Address;
                                                                              };
                                                                          } | null;
                                                                      };
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                offer: {
                                                                    __typename?: "SingleNFTOffer";
                                                                    id: string;
                                                                    status: string;
                                                                    nft: {
                                                                        __typename?: "NFT";
                                                                        tokenId: bigint;
                                                                        collection?: {
                                                                            __typename?: "Collection";
                                                                            contractData: {
                                                                                __typename?: "ContractData";
                                                                                contractAddress: Address;
                                                                            };
                                                                        } | null;
                                                                    };
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "SingleNFTOffer"
                                                                • +
                                                                • +
                                                                  id: string
                                                                • +
                                                                • +
                                                                  status: string
                                                                • +
                                                                • +
                                                                  nft: {
                                                                      __typename?: "NFT";
                                                                      tokenId: bigint;
                                                                      collection?: {
                                                                          __typename?: "Collection";
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: Address;
                                                                          };
                                                                      } | null;
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    Optional __typename?: "NFT"
                                                                  • +
                                                                  • +
                                                                    tokenId: bigint
                                                                  • +
                                                                  • +
                                                                    Optional collection?: {
                                                                        __typename?: "Collection";
                                                                        contractData: {
                                                                            __typename?: "ContractData";
                                                                            contractAddress: Address;
                                                                        };
                                                                    } | null
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Scalars.html b/docs/0.17.2/types/Internal.Scalars.html new file mode 100644 index 00000000..992a8960 --- /dev/null +++ b/docs/0.17.2/types/Internal.Scalars.html @@ -0,0 +1,213 @@ +Scalars | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Scalars

                                                              +
                                                              Scalars: {
                                                                  ID: string;
                                                                  String: string;
                                                                  Boolean: boolean;
                                                                  Int: number;
                                                                  Float: number;
                                                                  Address: Address;
                                                                  BigInt: bigint;
                                                                  DateTime: Date;
                                                                  Hash: Hash;
                                                                  Hex: Hex;
                                                                  JSON: object;
                                                                  Signature: Hex;
                                                                  Void: any;
                                                              }
                                                              +

                                                              All built-in and custom scalars, mapped to their actual values

                                                              +
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                ID: string
                                                              • +
                                                              • +
                                                                String: string
                                                              • +
                                                              • +
                                                                Boolean: boolean
                                                              • +
                                                              • +
                                                                Int: number
                                                              • +
                                                              • +
                                                                Float: number
                                                              • +
                                                              • +
                                                                Address: Address
                                                              • +
                                                              • +
                                                                BigInt: bigint
                                                              • +
                                                              • +
                                                                DateTime: Date
                                                              • +
                                                              • +
                                                                Hash: Hash
                                                              • +
                                                              • +
                                                                Hex: Hex
                                                              • +
                                                              • +
                                                                JSON: object
                                                              • +
                                                              • +
                                                                Signature: Hex
                                                              • +
                                                              • +
                                                                Void: any
                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.SellAndRepayOrder.html b/docs/0.17.2/types/Internal.SellAndRepayOrder.html new file mode 100644 index 00000000..1e6f9d93 --- /dev/null +++ b/docs/0.17.2/types/Internal.SellAndRepayOrder.html @@ -0,0 +1,242 @@ +SellAndRepayOrder | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias SellAndRepayOrder

                                                              +
                                                              SellAndRepayOrder: Activity & Node & Order & {
                                                                  __typename?: "SellAndRepayOrder";
                                                                  cancelCalldata: Scalars["Hex"];
                                                                  createdDate: Scalars["DateTime"];
                                                                  currency: Currency;
                                                                  currencyAddress: Scalars["Address"];
                                                                  expiration?: Maybe<Scalars["DateTime"]>;
                                                                  fees: Scalars["BigInt"];
                                                                  hidden: Scalars["Boolean"];
                                                                  id: Scalars["String"];
                                                                  isAsk: Scalars["Boolean"];
                                                                  isPrivate: Scalars["Boolean"];
                                                                  loan: MultiSourceLoan;
                                                                  loanId: Scalars["String"];
                                                                  maker: Scalars["Address"];
                                                                  marketPlace: Scalars["String"];
                                                                  marketPlaceAddress: Scalars["Address"];
                                                                  netAmount: Scalars["BigInt"];
                                                                  nft: Nft;
                                                                  nftId: Scalars["Int"];
                                                                  nonce: Scalars["BigInt"];
                                                                  orderType: Scalars["String"];
                                                                  price: Scalars["BigInt"];
                                                                  repaymentCalldata: Scalars["Hex"];
                                                                  signature: Scalars["Signature"];
                                                                  startTime: Scalars["DateTime"];
                                                                  status: Scalars["String"];
                                                                  taker: Scalars["Address"];
                                                                  timestamp: Scalars["DateTime"];
                                                                  txHash?: Maybe<Scalars["Hash"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.ShowOrderMutation.html b/docs/0.17.2/types/Internal.ShowOrderMutation.html new file mode 100644 index 00000000..7f0755d9 --- /dev/null +++ b/docs/0.17.2/types/Internal.ShowOrderMutation.html @@ -0,0 +1,188 @@ +ShowOrderMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias ShowOrderMutation

                                                              +
                                                              ShowOrderMutation: {
                                                                  __typename?: "Mutation";
                                                                  showOrder: {
                                                                      __typename?: "CollectionOrder";
                                                                      id: string;
                                                                  } | {
                                                                      __typename?: "SellAndRepayOrder";
                                                                      id: string;
                                                                  } | {
                                                                      __typename?: "SingleNFTOrder";
                                                                      id: string;
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                showOrder: {
                                                                    __typename?: "CollectionOrder";
                                                                    id: string;
                                                                } | {
                                                                    __typename?: "SellAndRepayOrder";
                                                                    id: string;
                                                                } | {
                                                                    __typename?: "SingleNFTOrder";
                                                                    id: string;
                                                                }
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Signature.html b/docs/0.17.2/types/Internal.Signature.html new file mode 100644 index 00000000..c44a620a --- /dev/null +++ b/docs/0.17.2/types/Internal.Signature.html @@ -0,0 +1,181 @@ +Signature | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Signature

                                                              +
                                                              Signature: HexString
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.SignedRenegotiationOfferInput.html b/docs/0.17.2/types/Internal.SignedRenegotiationOfferInput.html new file mode 100644 index 00000000..bd30da9f --- /dev/null +++ b/docs/0.17.2/types/Internal.SignedRenegotiationOfferInput.html @@ -0,0 +1,216 @@ +SignedRenegotiationOfferInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias SignedRenegotiationOfferInput

                                                              +
                                                              SignedRenegotiationOfferInput: {
                                                                  aprBps: Scalars["BigInt"];
                                                                  duration: Scalars["BigInt"];
                                                                  expirationTime: Scalars["BigInt"];
                                                                  feeAmount: Scalars["BigInt"];
                                                                  isAddNewTranche?: InputMaybe<Scalars["Boolean"]>;
                                                                  lenderAddress: Scalars["Address"];
                                                                  loanId: Scalars["String"];
                                                                  offerHash: Scalars["Hash"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  renegotiationId: Scalars["BigInt"];
                                                                  requiresLiquidation?: InputMaybe<Scalars["Boolean"]>;
                                                                  signature: Scalars["Signature"];
                                                                  signerAddress?: InputMaybe<Scalars["Address"]>;
                                                                  strictImprovement?: InputMaybe<Scalars["Boolean"]>;
                                                                  targetPrincipal?: InputMaybe<Scalars["BigInt"][]>;
                                                                  trancheIndex?: InputMaybe<Scalars["BigInt"][]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.SingleNftOfferInput.html b/docs/0.17.2/types/Internal.SingleNftOfferInput.html new file mode 100644 index 00000000..8550d5a5 --- /dev/null +++ b/docs/0.17.2/types/Internal.SingleNftOfferInput.html @@ -0,0 +1,216 @@ +SingleNftOfferInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias SingleNftOfferInput

                                                              +
                                                              SingleNftOfferInput: {
                                                                  aprBps: Scalars["BigInt"];
                                                                  borrowerAddress: Scalars["Address"];
                                                                  capacity: Scalars["BigInt"];
                                                                  contractAddress: Scalars["Address"];
                                                                  duration: Scalars["BigInt"];
                                                                  expirationTime: Scalars["BigInt"];
                                                                  fee: Scalars["BigInt"];
                                                                  lenderAddress: Scalars["Address"];
                                                                  maxSeniorRepayment?: InputMaybe<Scalars["BigInt"]>;
                                                                  maxTrancheFloor?: InputMaybe<Scalars["BigInt"]>;
                                                                  nftId: Scalars["Int"];
                                                                  offerValidators: OfferValidatorInput[];
                                                                  principalAddress: Scalars["Address"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  requiresLiquidation?: InputMaybe<Scalars["Boolean"]>;
                                                                  signerAddress?: InputMaybe<Scalars["Address"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.SingleNftSignedOfferInput.html b/docs/0.17.2/types/Internal.SingleNftSignedOfferInput.html new file mode 100644 index 00000000..c0f8b1c2 --- /dev/null +++ b/docs/0.17.2/types/Internal.SingleNftSignedOfferInput.html @@ -0,0 +1,222 @@ +SingleNftSignedOfferInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias SingleNftSignedOfferInput

                                                              +
                                                              SingleNftSignedOfferInput: {
                                                                  aprBps: Scalars["BigInt"];
                                                                  borrowerAddress: Scalars["Address"];
                                                                  capacity: Scalars["BigInt"];
                                                                  contractAddress: Scalars["Address"];
                                                                  duration: Scalars["BigInt"];
                                                                  expirationTime: Scalars["BigInt"];
                                                                  fee: Scalars["BigInt"];
                                                                  lenderAddress: Scalars["Address"];
                                                                  maxSeniorRepayment?: InputMaybe<Scalars["BigInt"]>;
                                                                  maxTrancheFloor?: InputMaybe<Scalars["BigInt"]>;
                                                                  nftId: Scalars["Int"];
                                                                  offerHash: Scalars["Hash"];
                                                                  offerId: Scalars["BigInt"];
                                                                  offerValidators: OfferValidatorInput[];
                                                                  principalAddress: Scalars["Address"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  requiresLiquidation?: InputMaybe<Scalars["Boolean"]>;
                                                                  signature: Scalars["Signature"];
                                                                  signerAddress?: InputMaybe<Scalars["Address"]>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Source.html b/docs/0.17.2/types/Internal.Source.html new file mode 100644 index 00000000..3fed9c9a --- /dev/null +++ b/docs/0.17.2/types/Internal.Source.html @@ -0,0 +1,228 @@ +Source | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Source

                                                              +
                                                              Source: Node & {
                                                                  __typename?: "Source";
                                                                  accruedInterest: Scalars["BigInt"];
                                                                  aprBps: Scalars["BigInt"];
                                                                  borrowerEaprBps: Scalars["BigInt"];
                                                                  earnedInterest: Scalars["BigInt"];
                                                                  effectiveDuration: Scalars["BigInt"];
                                                                  endDate: Scalars["DateTime"];
                                                                  expectedInterestLeft: Scalars["BigInt"];
                                                                  id: Scalars["String"];
                                                                  lenderAddress: Scalars["String"];
                                                                  lenderEaprBps: Scalars["BigInt"];
                                                                  loan: MultiSourceLoan;
                                                                  loanId: Scalars["String"];
                                                                  loanIndex?: Maybe<Scalars["Int"]>;
                                                                  loanReferenceId: Scalars["String"];
                                                                  originationFee: Scalars["BigInt"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  profit: Scalars["BigInt"];
                                                                  refinanceNetAprBps: Scalars["BigInt"];
                                                                  repaidInterest: Scalars["BigInt"];
                                                                  seniorPrincipalAmount?: Maybe<Scalars["BigInt"]>;
                                                                  startTime: Scalars["DateTime"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.SourceHistory.html b/docs/0.17.2/types/Internal.SourceHistory.html new file mode 100644 index 00000000..2d07947a --- /dev/null +++ b/docs/0.17.2/types/Internal.SourceHistory.html @@ -0,0 +1,206 @@ +SourceHistory | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias SourceHistory

                                                              +
                                                              SourceHistory: Node & {
                                                                  __typename?: "SourceHistory";
                                                                  accruedInterest: Scalars["BigInt"];
                                                                  aprBps: Scalars["BigInt"];
                                                                  id: Scalars["String"];
                                                                  lenderAddress: Scalars["String"];
                                                                  loanId: Scalars["String"];
                                                                  loanIndex?: Maybe<Scalars["Int"]>;
                                                                  originationFee: Scalars["BigInt"];
                                                                  principalAmount: Scalars["BigInt"];
                                                                  seniorPrincipalAmount?: Maybe<Scalars["BigInt"]>;
                                                                  startTime: Scalars["DateTime"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "SourceHistory"
                                                              • +
                                                              • +
                                                                accruedInterest: Scalars["BigInt"]
                                                              • +
                                                              • +
                                                                aprBps: Scalars["BigInt"]
                                                              • +
                                                              • +
                                                                id: Scalars["String"]
                                                              • +
                                                              • +
                                                                lenderAddress: Scalars["String"]
                                                              • +
                                                              • +
                                                                loanId: Scalars["String"]
                                                              • +
                                                              • +
                                                                Optional loanIndex?: Maybe<Scalars["Int"]>
                                                              • +
                                                              • +
                                                                originationFee: Scalars["BigInt"]
                                                              • +
                                                              • +
                                                                principalAmount: Scalars["BigInt"]
                                                              • +
                                                              • +
                                                                Optional seniorPrincipalAmount?: Maybe<Scalars["BigInt"]>
                                                              • +
                                                              • +
                                                                startTime: Scalars["DateTime"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.StatByCollection.html b/docs/0.17.2/types/Internal.StatByCollection.html new file mode 100644 index 00000000..236e6535 --- /dev/null +++ b/docs/0.17.2/types/Internal.StatByCollection.html @@ -0,0 +1,190 @@ +StatByCollection | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias StatByCollection

                                                              +
                                                              StatByCollection: {
                                                                  __typename?: "StatByCollection";
                                                                  collection: Collection;
                                                                  value: Scalars["BigInt"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "StatByCollection"
                                                              • +
                                                              • +
                                                                collection: Collection
                                                              • +
                                                              • +
                                                                value: Scalars["BigInt"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.TermsFilter.html b/docs/0.17.2/types/Internal.TermsFilter.html new file mode 100644 index 00000000..c7465461 --- /dev/null +++ b/docs/0.17.2/types/Internal.TermsFilter.html @@ -0,0 +1,198 @@ +TermsFilter | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias TermsFilter

                                                              +
                                                              TermsFilter: {
                                                                  aprBps?: InputMaybe<Interval>;
                                                                  duration?: InputMaybe<Interval>;
                                                                  fee?: InputMaybe<Interval>;
                                                                  maxPrincipal?: InputMaybe<Interval>;
                                                                  netPrincipal?: InputMaybe<Interval>;
                                                                  principal?: InputMaybe<Interval>;
                                                                  remainingTime?: InputMaybe<Interval>;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.TopUpRequest.html b/docs/0.17.2/types/Internal.TopUpRequest.html new file mode 100644 index 00000000..cb09eab8 --- /dev/null +++ b/docs/0.17.2/types/Internal.TopUpRequest.html @@ -0,0 +1,198 @@ +TopUpRequest | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias TopUpRequest

                                                              +
                                                              TopUpRequest: Node & {
                                                                  __typename?: "TopUpRequest";
                                                                  createdDate: Scalars["DateTime"];
                                                                  desiredAprBps?: Maybe<Scalars["BigInt"]>;
                                                                  desiredTopUp?: Maybe<Scalars["BigInt"]>;
                                                                  expirationDate: Scalars["DateTime"];
                                                                  id: Scalars["String"];
                                                                  loanId: Scalars["String"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "TopUpRequest"
                                                              • +
                                                              • +
                                                                createdDate: Scalars["DateTime"]
                                                              • +
                                                              • +
                                                                Optional desiredAprBps?: Maybe<Scalars["BigInt"]>
                                                              • +
                                                              • +
                                                                Optional desiredTopUp?: Maybe<Scalars["BigInt"]>
                                                              • +
                                                              • +
                                                                expirationDate: Scalars["DateTime"]
                                                              • +
                                                              • +
                                                                id: Scalars["String"]
                                                              • +
                                                              • +
                                                                loanId: Scalars["String"]
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Trait.html b/docs/0.17.2/types/Internal.Trait.html new file mode 100644 index 00000000..d34ef604 --- /dev/null +++ b/docs/0.17.2/types/Internal.Trait.html @@ -0,0 +1,194 @@ +Trait | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Trait

                                                              +
                                                              Trait: {
                                                                  __typename?: "Trait";
                                                                  collectionId: Scalars["String"];
                                                                  statistics: CollectionStatistics;
                                                                  type: Scalars["String"];
                                                                  value: Scalars["String"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.UnhideOfferMutation.html b/docs/0.17.2/types/Internal.UnhideOfferMutation.html new file mode 100644 index 00000000..31558500 --- /dev/null +++ b/docs/0.17.2/types/Internal.UnhideOfferMutation.html @@ -0,0 +1,188 @@ +UnhideOfferMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias UnhideOfferMutation

                                                              +
                                                              UnhideOfferMutation: {
                                                                  __typename?: "Mutation";
                                                                  showOffer: {
                                                                      __typename?: "CollectionOffer";
                                                                      id: string;
                                                                  } | {
                                                                      __typename?: "SingleNFTOffer";
                                                                      id: string;
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                showOffer: {
                                                                    __typename?: "CollectionOffer";
                                                                    id: string;
                                                                } | {
                                                                    __typename?: "SingleNFTOffer";
                                                                    id: string;
                                                                }
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.UnhideRenegotiationOfferMutation.html b/docs/0.17.2/types/Internal.UnhideRenegotiationOfferMutation.html new file mode 100644 index 00000000..306b60cd --- /dev/null +++ b/docs/0.17.2/types/Internal.UnhideRenegotiationOfferMutation.html @@ -0,0 +1,193 @@ +UnhideRenegotiationOfferMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias UnhideRenegotiationOfferMutation

                                                              +
                                                              UnhideRenegotiationOfferMutation: {
                                                                  __typename?: "Mutation";
                                                                  showRenegotiation: {
                                                                      __typename?: "Renegotiation";
                                                                      id: string;
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                showRenegotiation: {
                                                                    __typename?: "Renegotiation";
                                                                    id: string;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "Renegotiation"
                                                                • +
                                                                • +
                                                                  id: string
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.UnlistNftMutation.html b/docs/0.17.2/types/Internal.UnlistNftMutation.html new file mode 100644 index 00000000..ebc82b69 --- /dev/null +++ b/docs/0.17.2/types/Internal.UnlistNftMutation.html @@ -0,0 +1,193 @@ +UnlistNftMutation | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias UnlistNftMutation

                                                              +
                                                              UnlistNftMutation: {
                                                                  __typename?: "Mutation";
                                                                  removeListing: {
                                                                      __typename?: "Listing";
                                                                      id: string;
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "Mutation"
                                                              • +
                                                              • +
                                                                removeListing: {
                                                                    __typename?: "Listing";
                                                                    id: string;
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional __typename?: "Listing"
                                                                • +
                                                                • +
                                                                  id: string
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.User.html b/docs/0.17.2/types/Internal.User.html new file mode 100644 index 00000000..96a6cd79 --- /dev/null +++ b/docs/0.17.2/types/Internal.User.html @@ -0,0 +1,226 @@ +User | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias User

                                                              +
                                                              User: Node & {
                                                                  __typename?: "User";
                                                                  about?: Maybe<Scalars["String"]>;
                                                                  beta: Scalars["Boolean"];
                                                                  blockchain: Scalars["String"];
                                                                  createdDate: Scalars["DateTime"];
                                                                  id: Scalars["String"];
                                                                  linkedWallets: LinkedWallets[];
                                                                  mail?: Maybe<Scalars["String"]>;
                                                                  mailValidationDate?: Maybe<Scalars["DateTime"]>;
                                                                  originalProfilePicture?: Maybe<Scalars["String"]>;
                                                                  profilePictureId?: Maybe<Scalars["Int"]>;
                                                                  size64ProfilePicture?: Maybe<Scalars["String"]>;
                                                                  size128ProfilePicture?: Maybe<Scalars["String"]>;
                                                                  size256ProfilePicture?: Maybe<Scalars["String"]>;
                                                                  size512ProfilePicture?: Maybe<Scalars["String"]>;
                                                                  statistics: UserStatistics;
                                                                  twitterHandle?: Maybe<Scalars["String"]>;
                                                                  updatedAt?: Maybe<Scalars["DateTime"]>;
                                                                  usedProduct: Scalars["Boolean"];
                                                                  username?: Maybe<Scalars["String"]>;
                                                                  walletAddress: Scalars["Address"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.UserFilter.html b/docs/0.17.2/types/Internal.UserFilter.html new file mode 100644 index 00000000..a552e73c --- /dev/null +++ b/docs/0.17.2/types/Internal.UserFilter.html @@ -0,0 +1,188 @@ +UserFilter | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias UserFilter

                                                              +
                                                              UserFilter: {
                                                                  onlyOrExclude: Scalars["Boolean"];
                                                                  userId: Scalars["Int"];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.UserStatistics.html b/docs/0.17.2/types/Internal.UserStatistics.html new file mode 100644 index 00000000..0f09c809 --- /dev/null +++ b/docs/0.17.2/types/Internal.UserStatistics.html @@ -0,0 +1,298 @@ +UserStatistics | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias UserStatistics

                                                              +
                                                              UserStatistics: {
                                                                  __typename?: "UserStatistics";
                                                                  defaultedPrincipal: Scalars["BigInt"];
                                                                  interestEarnedByCollection: StatByCollection[];
                                                                  loanCount: Scalars["BigInt"];
                                                                  loanCountByCollection: StatByCollection[];
                                                                  loanPrincipalByCollection: StatByCollection[];
                                                                  originationCountAndPrincipalByMonth: Scalars["BigInt"][][];
                                                                  outstandingAccruedInterest: Scalars["BigInt"];
                                                                  outstandingPrincipal: Scalars["BigInt"];
                                                                  realizedProfits: Scalars["BigInt"];
                                                                  renegotiationCountAndPrincipalByMonth: Scalars["BigInt"][][];
                                                                  totalLentPrincipal: Scalars["BigInt"];
                                                                  totalLoanCount: Scalars["BigInt"];
                                                                  wavgOutstandingApr: Scalars["BigInt"];
                                                                  wavgOutstandingAprByCollection: StatByCollection[];
                                                                  wavgRepaidApr: Scalars["BigInt"];
                                                                  wavgRepaidAprByCollection: StatByCollection[];
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional __typename?: "UserStatistics"
                                                              • +
                                                              • +
                                                                defaultedPrincipal: Scalars["BigInt"]
                                                                +

                                                                Deprecated field. Stat will be removed

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Stat will be removed

                                                                +
                                                              • +
                                                              • +
                                                                interestEarnedByCollection: StatByCollection[]
                                                                +

                                                                Deprecated field. Use get_sources_statistics_by_collection instead.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics_by_collection instead.

                                                                +
                                                              • +
                                                              • +
                                                                loanCount: Scalars["BigInt"]
                                                                +

                                                                Deprecated field. Use get_sources_statistics to get source stats.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics to get source stats.

                                                                +
                                                              • +
                                                              • +
                                                                loanCountByCollection: StatByCollection[]
                                                                +

                                                                Deprecated field. Use get_sources_statistics_by_collection instead.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics_by_collection instead.

                                                                +
                                                              • +
                                                              • +
                                                                loanPrincipalByCollection: StatByCollection[]
                                                                +

                                                                Deprecated field. Use get_sources_statistics_by_collection instead.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics_by_collection instead.

                                                                +
                                                              • +
                                                              • +
                                                                originationCountAndPrincipalByMonth: Scalars["BigInt"][][]
                                                                +

                                                                Deprecated field. Use get_loan_activities_statistics_by_month instead.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_loan_activities_statistics_by_month instead.

                                                                +
                                                              • +
                                                              • +
                                                                outstandingAccruedInterest: Scalars["BigInt"]
                                                                +

                                                                Deprecated field. Use get_sources_statistics to get source stats.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics to get source stats.

                                                                +
                                                              • +
                                                              • +
                                                                outstandingPrincipal: Scalars["BigInt"]
                                                                +

                                                                Deprecated field. Use get_sources_statistics to get source stats.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics to get source stats.

                                                                +
                                                              • +
                                                              • +
                                                                realizedProfits: Scalars["BigInt"]
                                                                +

                                                                Deprecated field. Use get_sources_statistics to get source stats.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics to get source stats.

                                                                +
                                                              • +
                                                              • +
                                                                renegotiationCountAndPrincipalByMonth: Scalars["BigInt"][][]
                                                                +

                                                                Deprecated field. Use get_loan_activities_statistics_by_month instead.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_loan_activities_statistics_by_month instead.

                                                                +
                                                              • +
                                                              • +
                                                                totalLentPrincipal: Scalars["BigInt"]
                                                                +

                                                                Deprecated field. Use get_sources_statistics to get source stats.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics to get source stats.

                                                                +
                                                              • +
                                                              • +
                                                                totalLoanCount: Scalars["BigInt"]
                                                                +

                                                                Deprecated field. Use get_sources_statistics to get source stats.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics to get source stats.

                                                                +
                                                              • +
                                                              • +
                                                                wavgOutstandingApr: Scalars["BigInt"]
                                                                +

                                                                Deprecated field. Use get_sources_statistics to get source stats.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics to get source stats.

                                                                +
                                                              • +
                                                              • +
                                                                wavgOutstandingAprByCollection: StatByCollection[]
                                                                +

                                                                Deprecated field. Use get_sources_statistics_by_collection instead.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics_by_collection instead.

                                                                +
                                                              • +
                                                              • +
                                                                wavgRepaidApr: Scalars["BigInt"]
                                                                +

                                                                Deprecated field. Use get_sources_statistics to get source stats.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics to get source stats.

                                                                +
                                                              • +
                                                              • +
                                                                wavgRepaidAprByCollection: StatByCollection[]
                                                                +

                                                                Deprecated field. Use get_sources_statistics_by_collection instead.

                                                                +
                                                                +
                                                                +

                                                                Deprecated

                                                                Use get_sources_statistics_by_collection instead.

                                                                +
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.Wallet.html b/docs/0.17.2/types/Internal.Wallet.html new file mode 100644 index 00000000..2a37befb --- /dev/null +++ b/docs/0.17.2/types/Internal.Wallet.html @@ -0,0 +1,181 @@ +Wallet | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias Wallet

                                                              +
                                                              Wallet: WalletClient<Transport, Chain, Account>
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Internal.wrapOldERC721Args.html b/docs/0.17.2/types/Internal.wrapOldERC721Args.html new file mode 100644 index 00000000..7a976043 --- /dev/null +++ b/docs/0.17.2/types/Internal.wrapOldERC721Args.html @@ -0,0 +1,196 @@ +wrapOldERC721Args | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias wrapOldERC721Args

                                                              +
                                                              wrapOldERC721Args: {
                                                                  collection: {
                                                                      contractData: {
                                                                          contractAddress: Address;
                                                                      };
                                                                      wrapperCollections?: {
                                                                          contractData: {
                                                                              contractAddress: Address;
                                                                          };
                                                                      }[];
                                                                  };
                                                                  tokenId: bigint;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                collection: {
                                                                    contractData: {
                                                                        contractAddress: Address;
                                                                    };
                                                                    wrapperCollections?: {
                                                                        contractData: {
                                                                            contractAddress: Address;
                                                                        };
                                                                    }[];
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  contractData: {
                                                                      contractAddress: Address;
                                                                  }
                                                                  +
                                                                    +
                                                                  • +
                                                                    contractAddress: Address
                                                                • +
                                                                • +
                                                                  Optional wrapperCollections?: {
                                                                      contractData: {
                                                                          contractAddress: Address;
                                                                      };
                                                                  }[]
                                                              • +
                                                              • +
                                                                tokenId: bigint
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.CollectionOffer.html b/docs/0.17.2/types/Types.CollectionOffer.html new file mode 100644 index 00000000..ffa9ab4a --- /dev/null +++ b/docs/0.17.2/types/Types.CollectionOffer.html @@ -0,0 +1,67 @@ +CollectionOffer | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias CollectionOffer

                                                              +
                                                              CollectionOffer: UnsignedCollectionOffer & {
                                                                  signature: Hash;
                                                                  nftCollateralTokenId: 0n;
                                                              } & MaxSeniorRepaymentArg
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                signature: Hash
                                                              • +
                                                              • +
                                                                nftCollateralTokenId: 0n
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.CollectionOfferInput.html b/docs/0.17.2/types/Types.CollectionOfferInput.html new file mode 100644 index 00000000..2f7e1f60 --- /dev/null +++ b/docs/0.17.2/types/Types.CollectionOfferInput.html @@ -0,0 +1,60 @@ +CollectionOfferInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              + +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.ListListingsProps.html b/docs/0.17.2/types/Types.ListListingsProps.html new file mode 100644 index 00000000..0cfa39f0 --- /dev/null +++ b/docs/0.17.2/types/Types.ListListingsProps.html @@ -0,0 +1,73 @@ +ListListingsProps | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias ListListingsProps

                                                              +
                                                              ListListingsProps: {
                                                                  collections?: number[];
                                                                  user?: UserFilter;
                                                                  marketPlaces?: MarketplaceEnum[];
                                                                  limit?: number;
                                                                  cursor?: string | null;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional collections?: number[]
                                                              • +
                                                              • +
                                                                Optional user?: UserFilter
                                                              • +
                                                              • +
                                                                Optional marketPlaces?: MarketplaceEnum[]
                                                              • +
                                                              • +
                                                                Optional limit?: number
                                                              • +
                                                              • +
                                                                Optional cursor?: string | null
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.ListOffersProps.html b/docs/0.17.2/types/Types.ListOffersProps.html new file mode 100644 index 00000000..c55a0cbc --- /dev/null +++ b/docs/0.17.2/types/Types.ListOffersProps.html @@ -0,0 +1,86 @@ +ListOffersProps | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias ListOffersProps

                                                              +
                                                              ListOffersProps: {
                                                                  limit?: number;
                                                                  cursor?: string | null;
                                                                  sortBy?: OffersSortInput;
                                                                  filterBy?: {
                                                                      nft?: number;
                                                                      onlySingleNftOffers?: boolean;
                                                                      collection?: number;
                                                                      onlyCollectionOffers?: boolean;
                                                                      borrower?: Address;
                                                                      lenders?: Address[];
                                                                      status?: OfferStatus[];
                                                                  };
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                Optional limit?: number
                                                              • +
                                                              • +
                                                                Optional cursor?: string | null
                                                              • +
                                                              • +
                                                                Optional sortBy?: OffersSortInput
                                                              • +
                                                              • +
                                                                Optional filterBy?: {
                                                                    nft?: number;
                                                                    onlySingleNftOffers?: boolean;
                                                                    collection?: number;
                                                                    onlyCollectionOffers?: boolean;
                                                                    borrower?: Address;
                                                                    lenders?: Address[];
                                                                    status?: OfferStatus[];
                                                                }
                                                                +
                                                                  +
                                                                • +
                                                                  Optional nft?: number
                                                                • +
                                                                • +
                                                                  Optional onlySingleNftOffers?: boolean
                                                                • +
                                                                • +
                                                                  Optional collection?: number
                                                                • +
                                                                • +
                                                                  Optional onlyCollectionOffers?: boolean
                                                                • +
                                                                • +
                                                                  Optional borrower?: Address
                                                                • +
                                                                • +
                                                                  Optional lenders?: Address[]
                                                                • +
                                                                • +
                                                                  Optional status?: OfferStatus[]
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.NftStandard.html b/docs/0.17.2/types/Types.NftStandard.html new file mode 100644 index 00000000..5e342c96 --- /dev/null +++ b/docs/0.17.2/types/Types.NftStandard.html @@ -0,0 +1,60 @@ +NftStandard | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              + +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.RenegotiationInput.html b/docs/0.17.2/types/Types.RenegotiationInput.html new file mode 100644 index 00000000..79339266 --- /dev/null +++ b/docs/0.17.2/types/Types.RenegotiationInput.html @@ -0,0 +1,60 @@ +RenegotiationInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias RenegotiationInput

                                                              +
                                                              RenegotiationInput: Optional<RenegotiationOfferInput, "lenderAddress" | "signerAddress"> & ({
                                                                  trancheIndex: Exclude<RenegotiationOfferInput["trancheIndex"], null | undefined>;
                                                                  targetPrincipal?: undefined;
                                                              } | {
                                                                  trancheIndex?: undefined;
                                                                  targetPrincipal: Exclude<RenegotiationOfferInput["targetPrincipal"], null | undefined>;
                                                              })
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.RenegotiationOffer.html b/docs/0.17.2/types/Types.RenegotiationOffer.html new file mode 100644 index 00000000..20e8c2cb --- /dev/null +++ b/docs/0.17.2/types/Types.RenegotiationOffer.html @@ -0,0 +1,65 @@ +RenegotiationOffer | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              + +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.SingleNftOffer.html b/docs/0.17.2/types/Types.SingleNftOffer.html new file mode 100644 index 00000000..3b34f48f --- /dev/null +++ b/docs/0.17.2/types/Types.SingleNftOffer.html @@ -0,0 +1,65 @@ +SingleNftOffer | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              + +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.SingleNftOfferInput.html b/docs/0.17.2/types/Types.SingleNftOfferInput.html new file mode 100644 index 00000000..a19daf67 --- /dev/null +++ b/docs/0.17.2/types/Types.SingleNftOfferInput.html @@ -0,0 +1,60 @@ +SingleNftOfferInput | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              + +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.UnsignedCollectionOffer.html b/docs/0.17.2/types/Types.UnsignedCollectionOffer.html new file mode 100644 index 00000000..e513c769 --- /dev/null +++ b/docs/0.17.2/types/Types.UnsignedCollectionOffer.html @@ -0,0 +1,65 @@ +UnsignedCollectionOffer | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias UnsignedCollectionOffer

                                                              +
                                                              UnsignedCollectionOffer: Omit<CollectionSignedOfferInput, "signature" | "collectionId"> & {
                                                                  nftCollateralAddress: Address;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                nftCollateralAddress: Address
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.UnsignedRenegotiationOffer.html b/docs/0.17.2/types/Types.UnsignedRenegotiationOffer.html new file mode 100644 index 00000000..26328e5b --- /dev/null +++ b/docs/0.17.2/types/Types.UnsignedRenegotiationOffer.html @@ -0,0 +1,60 @@ +UnsignedRenegotiationOffer | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              + +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/types/Types.UnsignedSingleNftOffer.html b/docs/0.17.2/types/Types.UnsignedSingleNftOffer.html new file mode 100644 index 00000000..74d12d28 --- /dev/null +++ b/docs/0.17.2/types/Types.UnsignedSingleNftOffer.html @@ -0,0 +1,67 @@ +UnsignedSingleNftOffer | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Type alias UnsignedSingleNftOffer

                                                              +
                                                              UnsignedSingleNftOffer: Omit<SingleNftSignedOfferInput, "signature"> & {
                                                                  nftCollateralAddress: Address;
                                                                  nftCollateralTokenId: bigint;
                                                              }
                                                              +
                                                              +

                                                              Type declaration

                                                              +
                                                                +
                                                              • +
                                                                nftCollateralAddress: Address
                                                              • +
                                                              • +
                                                                nftCollateralTokenId: bigint
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/FULFILLED.html b/docs/0.17.2/variables/FULFILLED.html new file mode 100644 index 00000000..56fe5998 --- /dev/null +++ b/docs/0.17.2/variables/FULFILLED.html @@ -0,0 +1,43 @@ +FULFILLED | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable FULFILLEDConst

                                                              +
                                                              FULFILLED: "fulfilled" = ...
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.auctionLoanLiquidatorABI-1.html b/docs/0.17.2/variables/Internal.auctionLoanLiquidatorABI-1.html new file mode 100644 index 00000000..413c313d --- /dev/null +++ b/docs/0.17.2/variables/Internal.auctionLoanLiquidatorABI-1.html @@ -0,0 +1,181 @@ +auctionLoanLiquidatorABI | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable auctionLoanLiquidatorABIConst

                                                              +
                                                              auctionLoanLiquidatorABI: readonly [{
                                                                  stateMutability: "nonpayable";
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "liquidationDistributor";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "currencyManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "collectionManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AddressZeroError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AuctionAlreadyInProgressError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expiration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  name: "AuctionNotOverError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expiration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  name: "AuctionOverError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CollectionNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CouldNotModifyValidLoansError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CurrencyNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidHashAuctionError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidTriggerFee";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "LoanNotAcceptedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_minBid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "MinBidError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "NFTNotOwnedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NoBidsError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ZeroAddressError";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "auctionContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "asset";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "proceeds";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "settler";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AuctionSettled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "newBidder";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "bid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "BidPlaced";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "liquidationDistributor";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LiquidationDistributorUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanContractAdded";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanContractRemoved";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanLiquidationStarted";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "OwnershipTransferred";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "TriggerFeeUpdated";
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MAX_TRIGGER_FEE";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MIN_INCREMENT_BPS";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "addLoanContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getAuctionHash";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLiquidationDistributor";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getTriggerFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getValidLoanContracts";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_asset";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_duration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }, {
                                                                      name: "_originator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "liquidateLoan";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC721Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "owner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }, {
                                                                      name: "_bid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "placeBid";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "removeLoanContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                                  name: "settleAuction";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "__liquidationDistributor";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "updateLiquidationDistributor";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "updateTriggerFee";
                                                                  outputs: readonly [];
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.auctionLoanLiquidatorABI.html b/docs/0.17.2/variables/Internal.auctionLoanLiquidatorABI.html new file mode 100644 index 00000000..711a9400 --- /dev/null +++ b/docs/0.17.2/variables/Internal.auctionLoanLiquidatorABI.html @@ -0,0 +1,181 @@ +auctionLoanLiquidatorABI | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable auctionLoanLiquidatorABIConst

                                                              +
                                                              auctionLoanLiquidatorABI: readonly [{
                                                                  stateMutability: "nonpayable";
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "currencyManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "collectionManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AuctionAlreadyInProgressError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "AuctionNotExistsError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expiration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  name: "AuctionNotOverError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expiration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  name: "AuctionOverError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CollectionNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CurrencyNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidTriggerFee";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "LoanNotAcceptedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_minBid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "MinBidError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "NFTNotOwnedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NoBidsError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ZeroAddressError";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "auctionContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "asset";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "highestBid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "settler";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AuctionSettled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "auctionContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "newBidder";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "bid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "BidPlaced";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanContractAdded";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanContractRemoved";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "duration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "asset";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanLiquidationStarted";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "OwnershipTransferred";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "TriggerFeeUpdated";
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MAX_TRIGGER_FEE";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MIN_INCREMENT_BPS";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "addLoanContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getAuction";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct AuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getTriggerFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getValidLoanContracts";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_asset";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_duration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }, {
                                                                      name: "_originator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "liquidateLoan";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC721Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "owner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_bid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "placeBid";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "removeLoanContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "settleAuction";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "updateTriggerFee";
                                                                  outputs: readonly [];
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.auctionLoanLiquidatorAbi-2.html b/docs/0.17.2/variables/Internal.auctionLoanLiquidatorAbi-2.html new file mode 100644 index 00000000..526d4240 --- /dev/null +++ b/docs/0.17.2/variables/Internal.auctionLoanLiquidatorAbi-2.html @@ -0,0 +1,181 @@ +auctionLoanLiquidatorAbi | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable auctionLoanLiquidatorAbiConst

                                                              +
                                                              auctionLoanLiquidatorAbi: readonly [{
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "liquidationDistributor";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "currencyManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "collectionManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "maxExtension";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AddressZeroError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AuctionAlreadyInProgressError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expiration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  name: "AuctionNotOverError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expiration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  name: "AuctionOverError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CollectionNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CouldNotModifyValidLoansError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CurrencyNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidHashAuctionError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidTriggerFee";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "LoanNotAcceptedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_minBid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "MinBidError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "NFTNotOwnedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NoBidsError";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "asset";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "proceeds";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "settler";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AuctionSettled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "newBidder";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "bid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "BidPlaced";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "liquidationDistributor";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LiquidationDistributorUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanContractAdded";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanContractRemoved";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "minBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanLiquidationStarted";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "OwnershipTransferred";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "TriggerFeeUpdated";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MAX_TRIGGER_FEE";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MIN_INCREMENT_BPS";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "addLoanContract";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_nftAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getAuctionHash";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLiquidationDistributor";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getMaxExtension";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getTriggerFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getValidLoanContracts";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_nftAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_asset";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_duration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }, {
                                                                      name: "_minBid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_originator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "liquidateLoan";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC721Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "owner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_nftAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "minBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }, {
                                                                      name: "_bid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "placeBid";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "minBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "removeLoanContract";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "minBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "settleAuction";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "__liquidationDistributor";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "updateLiquidationDistributor";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "updateTriggerFee";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.auctionWithBuyoutLoanLiquidatorAbi.html b/docs/0.17.2/variables/Internal.auctionWithBuyoutLoanLiquidatorAbi.html new file mode 100644 index 00000000..ec5854a3 --- /dev/null +++ b/docs/0.17.2/variables/Internal.auctionWithBuyoutLoanLiquidatorAbi.html @@ -0,0 +1,181 @@ +auctionWithBuyoutLoanLiquidatorAbi | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable auctionWithBuyoutLoanLiquidatorAbiConst

                                                              +
                                                              auctionWithBuyoutLoanLiquidatorAbi: readonly [{
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "liquidationDistributor";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "currencyManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "collectionManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "loanManagerRegistry";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "maxExtension";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }, {
                                                                      name: "timeForMainLenderToBuy";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AddressZeroError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AuctionAlreadyInProgressError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expiration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  name: "AuctionNotOverError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expiration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  name: "AuctionOverError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CollectionNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CouldNotModifyValidLoansError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CurrencyNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidHashAuctionError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidInputError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidTriggerFee";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "LoanNotAcceptedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_minBid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "MinBidError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "NFTNotOwnedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NoBidsError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NotMainLenderError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "timeLimit";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "OptionToBuyExpiredError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "timeLimit";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "OptionToBuyStilValidError";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "asset";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "proceeds";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "settler";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AuctionSettled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "nftAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "largestTrancheIdx";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AuctionSettledWithBuyout";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "newBidder";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "bid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "BidPlaced";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "liquidationDistributor";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LiquidationDistributorUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanContractAdded";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loan";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanContractRemoved";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "minBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanLiquidationStarted";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "OwnershipTransferred";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "timeForMainLenderToBuy";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "TimeForMainLenderToBuyUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "TriggerFeeUpdated";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MAX_TRIGGER_FEE";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MIN_INCREMENT_BPS";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "addLoanContract";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_nftAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getAuctionHash";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLiquidationDistributor";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLoanManagerRegistry";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "contract ILoanManagerRegistry";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getMaxExtension";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getTimeForMainLenderToBuy";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getTriggerFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getValidLoanContracts";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_nftAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_asset";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_duration";
                                                                      internalType: "uint96";
                                                                      type: "uint96";
                                                                  }, {
                                                                      name: "_minBid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_originator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "liquidateLoan";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC721Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "owner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_nftAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "minBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }, {
                                                                      name: "_bid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "placeBid";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "minBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "removeLoanContract";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "__timeForMainLenderToBuy";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "setTimeForMainLenderToBuy";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "minBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "settleAuction";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_nftAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_auction";
                                                                      internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "loanAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "triggerFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "minBid";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "highestBidder";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "asset";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }, {
                                                                          name: "originator";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lastBidTime";
                                                                          internalType: "uint96";
                                                                          type: "uint96";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "settleWithBuyout";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "__liquidationDistributor";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "updateLiquidationDistributor";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "triggerFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "updateTriggerFee";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.erc1155Abi.html b/docs/0.17.2/variables/Internal.erc1155Abi.html new file mode 100644 index 00000000..55b03a05 --- /dev/null +++ b/docs/0.17.2/variables/Internal.erc1155Abi.html @@ -0,0 +1,181 @@ +erc1155Abi | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable erc1155AbiConst

                                                              +
                                                              erc1155Abi: readonly [{
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "balanceOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "owners";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }, {
                                                                      name: "ids";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "balanceOfBatch";
                                                                  outputs: readonly [{
                                                                      name: "balances";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "isApprovedForAll";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "ids";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }, {
                                                                      name: "amounts";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }, {
                                                                      name: "data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "safeBatchTransferFrom";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "safeTransferFrom";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  name: "setApprovalForAll";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "interfaceId";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  name: "supportsInterface";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "uri";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ApprovalForAll";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "ids";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "amounts";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "TransferBatch";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "TransferSingle";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "value";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "URI";
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.erc721ABI.html b/docs/0.17.2/variables/Internal.erc721ABI.html new file mode 100644 index 00000000..96187b76 --- /dev/null +++ b/docs/0.17.2/variables/Internal.erc721ABI.html @@ -0,0 +1,181 @@ +erc721ABI | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable erc721ABIConst

                                                              +
                                                              erc721ABI: readonly [{
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "spender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "Approval";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ApprovalForAll";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "Transfer";
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "spender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "approve";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "balanceOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getApproved";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "isApprovedForAll";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "name";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ownerOf";
                                                                  outputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "safeTransferFrom";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "safeTransferFrom";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  name: "setApprovalForAll";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "interfaceId";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  name: "supportsInterface";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "symbol";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "tokenURI";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "transferFrom";
                                                                  outputs: readonly [];
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.multiSourceLoanABI-1.html b/docs/0.17.2/variables/Internal.multiSourceLoanABI-1.html new file mode 100644 index 00000000..3290575b --- /dev/null +++ b/docs/0.17.2/variables/Internal.multiSourceLoanABI-1.html @@ -0,0 +1,181 @@ +multiSourceLoanABI | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable multiSourceLoanABIConst

                                                              +
                                                              multiSourceLoanABI: readonly [{
                                                                  stateMutability: "nonpayable";
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "loanLiquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "protocolFee";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "currencyManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "collectionManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "maxSources";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "minLockPeriod";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "delegateRegistry";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "flashActionContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AddressZeroError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "CancelledOrExecutedOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "CancelledRenegotiationOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CannotLiquidateError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CollectionNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CurrencyNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ECDSAInvalidSignature";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "length";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ECDSAInvalidSignatureLength";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "s";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                                  name: "ECDSAInvalidSignatureS";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expirationTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ExpiredOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expirationTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ExpiredRenegotiationOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ExtensionNotAvailableError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_principalAmount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidAmountError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidBorrowerError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidCallbackError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidCollateralIdError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidDurationError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidLenderError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidLiquidationError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidLoanError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidMethodError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_fraction";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidProtocolFeeError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidRenegotiationOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidSignatureError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidValueError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "LengthMismatchError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_liquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "LiquidatorOnlyError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "LoanExpiredError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expirationTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LoanNotDueError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_newMinOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LowOfferIdError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_newMinRenegotiationOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LowRenegotiationOfferIdError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "MaxCapacityExceededError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "minLockPeriod";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "MinLockPeriodTooHighError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "i";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "returndata";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "MulticallFailed";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NFTNotReturnedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NotStrictlyImprovedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "OnlyBorrowerCallableError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "OnlyLenderCallableError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "OnlyLenderOrBorrowerCallableError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "PartialOfferCannotChangeDurationError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "PartialOfferCannotHaveFeeError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "RefinanceFullError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "minTimestamp";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "SourceCannotBeRefinancedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "sourcePrincipal";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "loanPrincipal";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "TargetPrincipalTooLowError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_pendingProtocolFeeSetTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "TooEarlyError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "sources";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "TooManySourcesError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ZeroDurationError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ZeroInterestError";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AllOffersCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "minRenegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AllRenegotiationOffersCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "borrower";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "BorrowerOfferCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newdelegateRegistry";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "DelegateRegistryUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "delegate";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "value";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "Delegated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newFlashActionContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "FlashActionContractUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "target";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "FlashActionExecuted";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "minimum";
                                                                      internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "interest";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ImprovementMinimumUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newDuration";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LiquidationAuctionDurationUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "liquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LiquidationContractUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "borrower";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "fee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanEmitted";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "oldLoanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "newLoanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "_extension";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanExtended";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanForeclosed";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanLiquidated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "oldLoanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "newLoanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "fee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanRefinanced";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "totalRepayment";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "fee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanRepaid";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "liquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanSentToLiquidator";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newMax";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "MaxSourcesUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "minLockPeriod";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "MinLockPeriodUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "OfferCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "OwnershipTransferred";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "fee";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ProtocolFeePendingUpdate";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "fee";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ProtocolFeeUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "RenegotiationOfferCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "delegate";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "RevokeDelegate";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "contractAdded";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tax";
                                                                      internalType: "struct WithCallbacks.Taxes";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "buyTax";
                                                                          internalType: "uint128";
                                                                          type: "uint128";
                                                                      }, {
                                                                          name: "sellTax";
                                                                          internalType: "uint128";
                                                                          type: "uint128";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "WhitelistedCallbackContractAdded";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "contractRemoved";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "WhitelistedCallbackContractRemoved";
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "DOMAIN_SEPARATOR";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "FEE_UPDATE_NOTICE";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "INITIAL_DOMAIN_SEPARATOR";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MAX_PROTOCOL_FEE";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MIN_AUCTION_DURATION";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint48";
                                                                      type: "uint48";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tax";
                                                                      internalType: "struct WithCallbacks.Taxes";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "buyTax";
                                                                          internalType: "uint128";
                                                                          type: "uint128";
                                                                      }, {
                                                                          name: "sellTax";
                                                                          internalType: "uint128";
                                                                          type: "uint128";
                                                                      }];
                                                                  }];
                                                                  name: "addWhitelistedCallbackContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelAllOffers";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_minRenegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelAllRenegotiationOffers";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelOffer";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_offerIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "cancelOffers";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelRenegotiationOffer";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "cancelRenegotiationOffers";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }, {
                                                                      name: "_delegate";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_rights";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }, {
                                                                      name: "_value";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  name: "delegate";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_executionData";
                                                                      internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "executionData";
                                                                          internalType: "struct IBaseLoan.ExecutionData";
                                                                          type: "tuple";
                                                                          components: readonly [{
                                                                              name: "offer";
                                                                              internalType: "struct IBaseLoan.LoanOffer";
                                                                              type: "tuple";
                                                                              components: readonly [{
                                                                                  name: "offerId";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "lender";
                                                                                  internalType: "address";
                                                                                  type: "address";
                                                                              }, {
                                                                                  name: "fee";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "borrower";
                                                                                  internalType: "address";
                                                                                  type: "address";
                                                                              }, {
                                                                                  name: "capacity";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "nftCollateralAddress";
                                                                                  internalType: "address";
                                                                                  type: "address";
                                                                              }, {
                                                                                  name: "nftCollateralTokenId";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "principalAddress";
                                                                                  internalType: "address";
                                                                                  type: "address";
                                                                              }, {
                                                                                  name: "principalAmount";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "aprBps";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "expirationTime";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "duration";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "validators";
                                                                                  internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                  type: "tuple[]";
                                                                                  components: readonly [{
                                                                                      name: "validator";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "arguments";
                                                                                      internalType: "bytes";
                                                                                      type: "bytes";
                                                                                  }];
                                                                              }];
                                                                          }, {
                                                                              name: "tokenId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "amount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "expirationTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "callbackData";
                                                                              internalType: "bytes";
                                                                              type: "bytes";
                                                                          }];
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "lenderOfferSignature";
                                                                          internalType: "bytes";
                                                                          type: "bytes";
                                                                      }, {
                                                                          name: "borrowerOfferSignature";
                                                                          internalType: "bytes";
                                                                          type: "bytes";
                                                                      }];
                                                                  }];
                                                                  name: "emitLoan";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }, {
                                                                      name: "_target";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "executeFlashAction";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }, {
                                                                      name: "_extension";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "extendLoan";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getCollectionManager";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getCurrencyManager";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getDelegateRegistry";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getFlashActionContract";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getImprovementMinimum";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "interest";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLiquidationAuctionDuration";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint48";
                                                                      type: "uint48";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLiquidator";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getLoanHash";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getMaxSources";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getMinLockPeriod";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanPrincipal";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getMinSourcePrincipal";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getPendingProtocolFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getPendingProtocolFeeSetTime";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getProtocolFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getTotalLoansIssued";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getUsedCapacity";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "isBorrowerOfferCancelled";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "isOfferCancelled";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "isRenegotiationOfferCancelled";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "isWhitelistedCallbackContract";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "lenderMinRenegotiationOfferId";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                                  name: "liquidateLoan";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                                  name: "loanLiquidated";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "minOfferId";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "payable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "data";
                                                                      internalType: "bytes[]";
                                                                      type: "bytes[]";
                                                                  }];
                                                                  name: "multicall";
                                                                  outputs: readonly [{
                                                                      name: "results";
                                                                      internalType: "bytes[]";
                                                                      type: "bytes[]";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "name";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC721Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "owner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationOffer";
                                                                      internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "renegotiationId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "targetPrincipal";
                                                                          internalType: "uint256[]";
                                                                          type: "uint256[]";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "aprBps";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "expirationTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }, {
                                                                      name: "_renegotiationOfferSignature";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "refinanceFull";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationOffer";
                                                                      internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "renegotiationId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "targetPrincipal";
                                                                          internalType: "uint256[]";
                                                                          type: "uint256[]";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "aprBps";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "expirationTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                                  name: "refinancePartial";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "removeWhitelistedCallbackContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_repaymentData";
                                                                      internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "data";
                                                                          internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                          type: "tuple";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "callbackData";
                                                                              internalType: "bytes";
                                                                              type: "bytes";
                                                                          }, {
                                                                              name: "shouldDelegate";
                                                                              internalType: "bool";
                                                                              type: "bool";
                                                                          }];
                                                                      }, {
                                                                          name: "loan";
                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                          type: "tuple";
                                                                          components: readonly [{
                                                                              name: "borrower";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "nftCollateralTokenId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "nftCollateralAddress";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAddress";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "duration";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "source";
                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                              type: "tuple[]";
                                                                              components: readonly [{
                                                                                  name: "loanId";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "lender";
                                                                                  internalType: "address";
                                                                                  type: "address";
                                                                              }, {
                                                                                  name: "principalAmount";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "accruedInterest";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "startTime";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "aprBps";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }];
                                                                          }];
                                                                      }, {
                                                                          name: "borrowerSignature";
                                                                          internalType: "bytes";
                                                                          type: "bytes";
                                                                      }];
                                                                  }];
                                                                  name: "repayLoan";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_delegate";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "revokeDelegate";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newDelegateRegistry";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "setDelegateRegistry";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newFlashActionContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "setFlashActionContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "__maxSources";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "setMaxSources";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "__minLockPeriod";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "setMinLockPeriod";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "setProtocolFee";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newMinimum";
                                                                      internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "interest";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "updateImprovementMinimum";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newDuration";
                                                                      internalType: "uint48";
                                                                      type: "uint48";
                                                                  }];
                                                                  name: "updateLiquidationAuctionDuration";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "loanLiquidator";
                                                                      internalType: "contract ILoanLiquidator";
                                                                      type: "address";
                                                                  }];
                                                                  name: "updateLiquidationContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newProtocolFee";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "updateProtocolFee";
                                                                  outputs: readonly [];
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.multiSourceLoanABI.html b/docs/0.17.2/variables/Internal.multiSourceLoanABI.html new file mode 100644 index 00000000..448bc49c --- /dev/null +++ b/docs/0.17.2/variables/Internal.multiSourceLoanABI.html @@ -0,0 +1,181 @@ +multiSourceLoanABI | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable multiSourceLoanABIConst

                                                              +
                                                              multiSourceLoanABI: readonly [{
                                                                  stateMutability: "nonpayable";
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "loanLiquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "protocolFee";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "currencyManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "collectionManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "maxSources";
                                                                      internalType: "uint8";
                                                                      type: "uint8";
                                                                  }];
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AddressZeroError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "CancelledOrExecutedOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "CancelledRenegotiationOffer";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "CancelledRenegotiationOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CannotLiquidateError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CollectionNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CurrencyNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ExpiredLoanError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expirationTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ExpiredOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expirationTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ExpiredRenegotiationOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidBorrowerError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidCallbackError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidCollateralIdError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidLiquidationError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidLoanError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_fraction";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidProtocolFeeError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidRenegotiationOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidSignatureError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidSignerError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "LengthMismatchError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_liquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "LiquidatorOnlyError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "LoanExpiredError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expirationTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LoanNotDueError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LoanNotFoundError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_newMinOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LowOfferIdError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_newMinRenegotiationOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LowRenegotiationOfferIdError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "MaxCapacityExceededError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "NotMintedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NotStrictlyImprovedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "OnlyBorrowerCallableError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "OnlyLenderOrSignerCallableError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "PartialOfferCannotChangeDurationError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "PartialOfferCannotHaveFeeError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "RefinanceFullError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "RepaymentError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "sourcePrincipal";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "loanPrincipal";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "TargetPrincipalTooLowError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_pendingProtocolFeeSetTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "TooEarlyError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "sources";
                                                                      internalType: "uint8";
                                                                      type: "uint8";
                                                                  }];
                                                                  name: "TooManySourcesError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "Unauthorized";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_authorized";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "UnauthorizedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ZeroAddressError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ZeroDurationError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ZeroInterestError";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AllOffersCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "minRenegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AllRenegotiationOffersCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "signer";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ApprovedSigner";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "minimum";
                                                                      internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "interest";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ImprovementMinimumUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newDuration";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LiquidationAuctionDurationUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "liquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LiquidationContractUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "fee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanEmitted";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanForeclosed";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "repayment";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanLiquidated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "oldLoanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "newLoanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "fee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanRefinanced";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "totalRepayment";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "fee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanRepaid";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "liquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanSentToLiquidator";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newMax";
                                                                      internalType: "uint8";
                                                                      type: "uint8";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "MaxSourcesUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "OfferCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "OwnershipTransferred";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "fee";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ProtocolFeePendingUpdate";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "fee";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ProtocolFeeUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "RenegotiationOfferCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "contract_added";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "WhitelistedCallbackContractAdded";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "contract_removed";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "WhitelistedCallbackContractRemoved";
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "DOMAIN_SEPARATOR";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "FEE_UPDATE_NOTICE";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "INITIAL_DOMAIN_SEPARATOR";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MAX_PROTOCOL_FEE";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "addWhitelistedCallbackContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_signer";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "approveSigner";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelAllOffers";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_minRenegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelAllRenegotiationOffers";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelOffer";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_offerIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "cancelOffers";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelRenegotiationOffer";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_renegotiationIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "cancelRenegotiationOffers";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanOffer";
                                                                      internalType: "struct IBaseLoan.LoanOffer";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "offerId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "capacity";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "signer";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "requiresLiquidation";
                                                                          internalType: "bool";
                                                                          type: "bool";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "aprBps";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "expirationTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "validators";
                                                                          internalType: "struct IBaseLoan.OfferValidator[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "validator";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "arguments";
                                                                              internalType: "bytes";
                                                                              type: "bytes";
                                                                          }];
                                                                      }];
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_lenderOfferSignature";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }, {
                                                                      name: "_withCallback";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  name: "emitLoan";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "getApprovedSigner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getCollectionManager";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getCurrencyManager";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getImprovementMinimum";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "interest";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLiquidationAuctionDuration";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint48";
                                                                      type: "uint48";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLiquidator";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getLoanHash";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getMaxSources";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint8";
                                                                      type: "uint8";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanPrincipal";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getMinSourcePrincipal";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getPendingProtocolFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getPendingProtocolFeeSetTime";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getProtocolFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getTotalLoansIssued";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getUsedCapacity";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "isOfferCancelled";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "isRenegotiationOfferCancelled";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "isWhitelistedCallbackContract";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "lenderMinOfferId";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "lenderMinRenegotiationOfferId";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                                  name: "liquidateLoan";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_collateralAddress";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_collateralTokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_repayment";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "loanLiquidated";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "name";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC721Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "owner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationOffer";
                                                                      internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "renegotiationId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "signer";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "targetPrincipal";
                                                                          internalType: "uint256[]";
                                                                          type: "uint256[]";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "aprBps";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "expirationTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "strictImprovement";
                                                                          internalType: "bool";
                                                                          type: "bool";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }, {
                                                                      name: "_renegotiationOfferSignature";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "refinanceFull";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationOffer";
                                                                      internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "renegotiationId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "signer";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "targetPrincipal";
                                                                          internalType: "uint256[]";
                                                                          type: "uint256[]";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "aprBps";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "expirationTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "strictImprovement";
                                                                          internalType: "bool";
                                                                          type: "bool";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                                  name: "refinancePartial";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationOffer";
                                                                      internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                                                      type: "tuple[]";
                                                                      components: readonly [{
                                                                          name: "renegotiationId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "signer";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "targetPrincipal";
                                                                          internalType: "uint256[]";
                                                                          type: "uint256[]";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "aprBps";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "expirationTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "strictImprovement";
                                                                          internalType: "bool";
                                                                          type: "bool";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan[]";
                                                                      type: "tuple[]";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                                  name: "refinancePartialBatch";
                                                                  outputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }, {
                                                                      name: "loans";
                                                                      internalType: "struct IMultiSourceLoan.Loan[]";
                                                                      type: "tuple[]";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "removeWhitelistedCallbackContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_collateralTo";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "source";
                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }];
                                                                  }, {
                                                                      name: "_withCallback";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  name: "repayLoan";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "maxSources";
                                                                      internalType: "uint8";
                                                                      type: "uint8";
                                                                  }];
                                                                  name: "setMaxSources";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "setProtocolFee";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newMinimum";
                                                                      internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "interest";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "updateImprovementMinimum";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newDuration";
                                                                      internalType: "uint48";
                                                                      type: "uint48";
                                                                  }];
                                                                  name: "updateLiquidationAuctionDuration";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "loanLiquidator";
                                                                      internalType: "contract ILoanLiquidator";
                                                                      type: "address";
                                                                  }];
                                                                  name: "updateLiquidationContract";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newProtocolFee";
                                                                      internalType: "struct IBaseLoan.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "updateProtocolFee";
                                                                  outputs: readonly [];
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.multiSourceLoanAbi-2.html b/docs/0.17.2/variables/Internal.multiSourceLoanAbi-2.html new file mode 100644 index 00000000..abe2c168 --- /dev/null +++ b/docs/0.17.2/variables/Internal.multiSourceLoanAbi-2.html @@ -0,0 +1,181 @@ +multiSourceLoanAbi | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable multiSourceLoanAbiConst

                                                              +
                                                              multiSourceLoanAbi: readonly [{
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "loanLiquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "protocolFee";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "currencyManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "collectionManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "maxTranches";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "minLockPeriod";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "delegateRegistry";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "loanManagerRegistry";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "flashActionContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "minWaitTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AddressZeroError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "CancelledOrExecutedOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CollectionNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CurrencyNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ECDSAInvalidSignature";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "length";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ECDSAInvalidSignatureLength";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "s";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                                  name: "ECDSAInvalidSignatureS";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expirationTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ExpiredOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidAddressesError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_principalAmount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidAmountError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidCallbackError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidCallerError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidCollateralIdError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidDurationError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidInputError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "InvalidLoanError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidMethodError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidParametersError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidRenegotiationOfferError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidSignatureError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidTrancheError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_liquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "LiquidatorOnlyError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "LoanExpiredError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "LoanLockedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_expirationTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LoanNotDueError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_newMinOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LowOfferIdError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_newMinRenegotiationOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "LowRenegotiationOfferIdError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "MaxCapacityExceededError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "MismatchError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "i";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "returndata";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "MulticallFailed";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NFTNotReturnedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "NotStrictlyImprovedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "_pendingProtocolFeeSetTime";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "TooEarlyError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "TooManyTranchesError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "TooSoonError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "minTimestamp";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "TrancheCannotBeRefinancedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "ZeroInterestError";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "AllOffersCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                      internalType: "uint256";
                                                                  }, {
                                                                      name: "delegate";
                                                                      type: "address";
                                                                      indexed: false;
                                                                      internalType: "address";
                                                                  }, {
                                                                      name: "_rights";
                                                                      type: "bytes32";
                                                                      indexed: false;
                                                                      internalType: "bytes32";
                                                                  }, {
                                                                      name: "value";
                                                                      type: "bool";
                                                                      indexed: false;
                                                                      internalType: "bool";
                                                                  }];
                                                                  name: "Delegated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newFlashActionContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "FlashActionContractUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "target";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "FlashActionExecuted";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newDuration";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LiquidationAuctionDurationUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "liquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LiquidationContractUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "offerId";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "fee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanEmitted";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanForeclosed";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanLiquidated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "oldLoanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "newLoanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "fee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanRefinanced";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "newLoanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "offerIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "totalFee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanRefinancedFromNewOffers";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "totalRepayment";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "fee";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanRepaid";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "liquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "LoanSentToLiquidator";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "_minimum";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "MinAprImprovementUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newMinBid";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "MinBidLiquidationUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "minLockPeriod";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "MinLockPeriodUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "OfferCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "OwnershipTransferred";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "fee";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ProtocolFeePendingUpdate";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "fee";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ProtocolFeeUpdated";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "RenegotiationOfferCancelled";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "delegate";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "RevokeDelegate";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "TransferOwnerRequested";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "contractAdded";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "WhitelistedCallbackContractAdded";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "contractRemoved";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "WhitelistedCallbackContractRemoved";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "DOMAIN_SEPARATOR";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "FEE_UPDATE_NOTICE";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "INITIAL_DOMAIN_SEPARATOR";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MAX_AUCTION_DURATION";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint48";
                                                                      type: "uint48";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MIN_AUCTION_DURATION";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint48";
                                                                      type: "uint48";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MIN_BID_LIQUIDATION";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "MIN_WAIT_TIME";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "VERSION";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationOffer";
                                                                      internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "renegotiationId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "trancheIndex";
                                                                          internalType: "uint256[]";
                                                                          type: "uint256[]";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "aprBps";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "expirationTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_renegotiationOfferSignature";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "addNewTranche";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "addWhitelistedCallbackContract";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelAllOffers";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelOffer";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "cancelRenegotiationOffer";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_delegate";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_rights";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }, {
                                                                      name: "_value";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  name: "delegate";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanExecutionData";
                                                                      internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "executionData";
                                                                          internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                          type: "tuple";
                                                                          components: readonly [{
                                                                              name: "offerExecution";
                                                                              internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                              type: "tuple[]";
                                                                              components: readonly [{
                                                                                  name: "offer";
                                                                                  internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                  type: "tuple";
                                                                                  components: readonly [{
                                                                                      name: "offerId";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "lender";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "fee";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "capacity";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "nftCollateralAddress";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "nftCollateralTokenId";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "principalAddress";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "principalAmount";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "aprBps";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "expirationTime";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "duration";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "maxSeniorRepayment";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "validators";
                                                                                      internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                      type: "tuple[]";
                                                                                      components: readonly [{
                                                                                          name: "validator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "arguments";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                  }];
                                                                              }, {
                                                                                  name: "amount";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "lenderOfferSignature";
                                                                                  internalType: "bytes";
                                                                                  type: "bytes";
                                                                              }];
                                                                          }, {
                                                                              name: "tokenId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "duration";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "expirationTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalReceiver";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "callbackData";
                                                                              internalType: "bytes";
                                                                              type: "bytes";
                                                                          }];
                                                                      }, {
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "borrowerOfferSignature";
                                                                          internalType: "bytes";
                                                                          type: "bytes";
                                                                      }];
                                                                  }];
                                                                  name: "emitLoan";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_target";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "executeFlashAction";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getCollectionManager";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getCurrencyManager";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getDelegateRegistry";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getFlashActionContract";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLiquidationAuctionDuration";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint48";
                                                                      type: "uint48";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLiquidator";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getLoanHash";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes32";
                                                                      type: "bytes32";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getLoanManagerRegistry";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "contract ILoanManagerRegistry";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getMaxTranches";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getMinImprovementApr";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getMinLockPeriod";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getPendingProtocolFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getPendingProtocolFeeSetTime";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getProtocolFee";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "getTotalLoansIssued";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_lender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getUsedCapacity";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "offerId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "isOfferCancelled";
                                                                  outputs: readonly [{
                                                                      name: "notActive";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "renegotiationIf";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "isRenegotiationOfferCancelled";
                                                                  outputs: readonly [{
                                                                      name: "notActive";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "isWhitelistedCallbackContract";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "liquidateLoan";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "loanLiquidated";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "minOfferId";
                                                                  outputs: readonly [{
                                                                      name: "minOfferId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "data";
                                                                      internalType: "bytes[]";
                                                                      type: "bytes[]";
                                                                  }];
                                                                  name: "multicall";
                                                                  outputs: readonly [{
                                                                      name: "results";
                                                                      internalType: "bytes[]";
                                                                      type: "bytes[]";
                                                                  }];
                                                                  stateMutability: "payable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "name";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC721Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "owner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "pendingOwner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "pendingOwnerTime";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_loanId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_loanExecutionData";
                                                                      internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "executionData";
                                                                          internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                          type: "tuple";
                                                                          components: readonly [{
                                                                              name: "offerExecution";
                                                                              internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                              type: "tuple[]";
                                                                              components: readonly [{
                                                                                  name: "offer";
                                                                                  internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                  type: "tuple";
                                                                                  components: readonly [{
                                                                                      name: "offerId";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "lender";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "fee";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "capacity";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "nftCollateralAddress";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "nftCollateralTokenId";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "principalAddress";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "principalAmount";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "aprBps";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "expirationTime";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "duration";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "maxSeniorRepayment";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "validators";
                                                                                      internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                      type: "tuple[]";
                                                                                      components: readonly [{
                                                                                          name: "validator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "arguments";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                  }];
                                                                              }, {
                                                                                  name: "amount";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "lenderOfferSignature";
                                                                                  internalType: "bytes";
                                                                                  type: "bytes";
                                                                              }];
                                                                          }, {
                                                                              name: "tokenId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "duration";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "expirationTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalReceiver";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "callbackData";
                                                                              internalType: "bytes";
                                                                              type: "bytes";
                                                                          }];
                                                                      }, {
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "borrowerOfferSignature";
                                                                          internalType: "bytes";
                                                                          type: "bytes";
                                                                      }];
                                                                  }];
                                                                  name: "refinanceFromLoanExecutionData";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationOffer";
                                                                      internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "renegotiationId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "trancheIndex";
                                                                          internalType: "uint256[]";
                                                                          type: "uint256[]";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "aprBps";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "expirationTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_renegotiationOfferSignature";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "refinanceFull";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_renegotiationOffer";
                                                                      internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "renegotiationId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "loanId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "lender";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "trancheIndex";
                                                                          internalType: "uint256[]";
                                                                          type: "uint256[]";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "aprBps";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "expirationTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_loan";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "refinancePartial";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          type: "tuple[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_contract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "removeWhitelistedCallbackContract";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_repaymentData";
                                                                      internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "data";
                                                                          internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                          type: "tuple";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "callbackData";
                                                                              internalType: "bytes";
                                                                              type: "bytes";
                                                                          }, {
                                                                              name: "shouldDelegate";
                                                                              internalType: "bool";
                                                                              type: "bool";
                                                                          }];
                                                                      }, {
                                                                          name: "loan";
                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                          type: "tuple";
                                                                          components: readonly [{
                                                                              name: "borrower";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "nftCollateralTokenId";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "nftCollateralAddress";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAddress";
                                                                              internalType: "address";
                                                                              type: "address";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "duration";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }, {
                                                                              name: "tranche";
                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                              type: "tuple[]";
                                                                              components: readonly [{
                                                                                  name: "loanId";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "floor";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "principalAmount";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "lender";
                                                                                  internalType: "address";
                                                                                  type: "address";
                                                                              }, {
                                                                                  name: "accruedInterest";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "startTime";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }, {
                                                                                  name: "aprBps";
                                                                                  internalType: "uint256";
                                                                                  type: "uint256";
                                                                              }];
                                                                          }, {
                                                                              name: "protocolFee";
                                                                              internalType: "uint256";
                                                                              type: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "borrowerSignature";
                                                                          internalType: "bytes";
                                                                          type: "bytes";
                                                                      }];
                                                                  }];
                                                                  name: "repayLoan";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "requestTransferOwner";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_delegate";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "revokeDelegate";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newFlashActionContract";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "setFlashActionContract";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "__minLockPeriod";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "setMinLockPeriod";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "setProtocolFee";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newDuration";
                                                                      internalType: "uint48";
                                                                      type: "uint48";
                                                                  }];
                                                                  name: "updateLiquidationAuctionDuration";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "__loanLiquidator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "updateLiquidationContract";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newMinimum";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "updateMinImprovementApr";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_newProtocolFee";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      type: "tuple";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          internalType: "address";
                                                                          type: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          internalType: "uint256";
                                                                          type: "uint256";
                                                                      }];
                                                                  }];
                                                                  name: "updateProtocolFee";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.oldErc721WrapperAbi.html b/docs/0.17.2/variables/Internal.oldErc721WrapperAbi.html new file mode 100644 index 00000000..a83df818 --- /dev/null +++ b/docs/0.17.2/variables/Internal.oldErc721WrapperAbi.html @@ -0,0 +1,181 @@ +oldErc721WrapperAbi | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable oldErc721WrapperAbiConst

                                                              +
                                                              oldErc721WrapperAbi: readonly [{
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "name";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }, {
                                                                      name: "symbol";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }, {
                                                                      name: "_wrapped";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "spender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "approve";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "balanceOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getApproved";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "isApprovedForAll";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "name";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ownerOf";
                                                                  outputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "safeTransferFrom";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "safeTransferFrom";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  name: "setApprovalForAll";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "stashAddress";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "stashFactory";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "contract Stash";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "interfaceId";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  name: "supportsInterface";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "symbol";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "tokenURI";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "tokensOfOwner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "totalSupply";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "transferFrom";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "unwrap";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "tokenIndexes";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "unwrapBatch";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "wrap";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "tokenIndexes";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "wrapBatch";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "wrapped";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "contract IOldERC721";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "spender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "Approval";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ApprovalForAll";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "Transfer";
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.purchaseBundlerAbi.html b/docs/0.17.2/variables/Internal.purchaseBundlerAbi.html new file mode 100644 index 00000000..9b1d8b24 --- /dev/null +++ b/docs/0.17.2/variables/Internal.purchaseBundlerAbi.html @@ -0,0 +1,181 @@ +purchaseBundlerAbi | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable purchaseBundlerAbiConst

                                                              +
                                                              purchaseBundlerAbi: readonly [{
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "_multiSourceLoanAddress";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }, {
                                                                      name: "_marketplaceContracts";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }, {
                                                                      name: "_wethAddress";
                                                                      type: "address";
                                                                      internalType: "address payable";
                                                                  }, {
                                                                      name: "_punkMarketAddress";
                                                                      type: "address";
                                                                      internalType: "address payable";
                                                                  }, {
                                                                      name: "_wrappedPunkAddress";
                                                                      type: "address";
                                                                      internalType: "address payable";
                                                                  }, {
                                                                      name: "__taxes";
                                                                      type: "tuple";
                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                      components: readonly [{
                                                                          name: "buyTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }, {
                                                                          name: "sellTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }];
                                                                  }, {
                                                                      name: "_minWaitTime";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }, {
                                                                      name: "__protocolFee";
                                                                      type: "tuple";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "fallback";
                                                                  stateMutability: "payable";
                                                              }, {
                                                                  type: "receive";
                                                                  stateMutability: "payable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "FEE_UPDATE_NOTICE";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "MIN_WAIT_TIME";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "TAX_UPDATE_NOTICE";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "afterNFTTransfer";
                                                                  inputs: readonly [{
                                                                      name: "_loan";
                                                                      type: "tuple";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          type: "tuple[]";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              type: "address";
                                                                              internalType: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_executionData";
                                                                      type: "bytes";
                                                                      internalType: "bytes";
                                                                  }];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "bytes4";
                                                                      internalType: "bytes4";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "afterPrincipalTransfer";
                                                                  inputs: readonly [{
                                                                      name: "_loan";
                                                                      type: "tuple";
                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          type: "tuple[]";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              type: "address";
                                                                              internalType: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }];
                                                                  }, {
                                                                      name: "_fee";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }, {
                                                                      name: "_executionData";
                                                                      type: "bytes";
                                                                      internalType: "bytes";
                                                                  }];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "bytes4";
                                                                      internalType: "bytes4";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "buy";
                                                                  inputs: readonly [{
                                                                      name: "_executionData";
                                                                      type: "bytes[]";
                                                                      internalType: "bytes[]";
                                                                  }];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "uint256[]";
                                                                      internalType: "uint256[]";
                                                                  }, {
                                                                      name: "";
                                                                      type: "tuple[]";
                                                                      internalType: "struct IMultiSourceLoan.Loan[]";
                                                                      components: readonly [{
                                                                          name: "borrower";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "nftCollateralTokenId";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "nftCollateralAddress";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "principalAddress";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "principalAmount";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "startTime";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "duration";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }, {
                                                                          name: "tranche";
                                                                          type: "tuple[]";
                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                          components: readonly [{
                                                                              name: "loanId";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "floor";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "principalAmount";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "lender";
                                                                              type: "address";
                                                                              internalType: "address";
                                                                          }, {
                                                                              name: "accruedInterest";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "startTime";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }, {
                                                                              name: "aprBps";
                                                                              type: "uint256";
                                                                              internalType: "uint256";
                                                                          }];
                                                                      }, {
                                                                          name: "protocolFee";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "payable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "executeSell";
                                                                  inputs: readonly [{
                                                                      name: "_currencies";
                                                                      type: "address[]";
                                                                      internalType: "contract ERC20[]";
                                                                  }, {
                                                                      name: "_currencyAmounts";
                                                                      type: "uint256[]";
                                                                      internalType: "uint256[]";
                                                                  }, {
                                                                      name: "_collections";
                                                                      type: "address[]";
                                                                      internalType: "contract ERC721[]";
                                                                  }, {
                                                                      name: "_tokenIds";
                                                                      type: "uint256[]";
                                                                      internalType: "uint256[]";
                                                                  }, {
                                                                      name: "_marketPlace";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }, {
                                                                      name: "_executionData";
                                                                      type: "bytes[]";
                                                                      internalType: "bytes[]";
                                                                  }];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "finalUpdateMultiSourceLoanAddress";
                                                                  inputs: readonly [{
                                                                      name: "_newAddress";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "getMultiSourceLoanAddress";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "getPendingProtocolFee";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "tuple";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "getPendingProtocolFeeSetTime";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "getPendingTaxes";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "tuple";
                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                      components: readonly [{
                                                                          name: "buyTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }, {
                                                                          name: "sellTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "getPendingTaxesSetTime";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "getProtocolFee";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "tuple";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "getTaxes";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "tuple";
                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                      components: readonly [{
                                                                          name: "buyTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }, {
                                                                          name: "sellTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }];
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "onERC721Received";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }, {
                                                                      name: "";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }, {
                                                                      name: "";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      type: "bytes";
                                                                      internalType: "bytes";
                                                                  }];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "bytes4";
                                                                      internalType: "bytes4";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "owner";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "pendingOwner";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "pendingOwnerTime";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  name: "requestTransferOwner";
                                                                  inputs: readonly [{
                                                                      name: "_newOwner";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "sell";
                                                                  inputs: readonly [{
                                                                      name: "_executionData";
                                                                      type: "bytes[]";
                                                                      internalType: "bytes[]";
                                                                  }];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "setProtocolFee";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "setTaxes";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "transferOwnership";
                                                                  inputs: readonly [];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "transferOwnership";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "updateMultiSourceLoanAddressFirst";
                                                                  inputs: readonly [{
                                                                      name: "_newAddress";
                                                                      type: "address";
                                                                      internalType: "address";
                                                                  }];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "updateProtocolFee";
                                                                  inputs: readonly [{
                                                                      name: "_newProtocolFee";
                                                                      type: "tuple";
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }];
                                                                  }];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  name: "updateTaxes";
                                                                  inputs: readonly [{
                                                                      name: "_newTaxes";
                                                                      type: "tuple";
                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                      components: readonly [{
                                                                          name: "buyTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }, {
                                                                          name: "sellTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }];
                                                                  }];
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "event";
                                                                  name: "BNPLLoansStarted";
                                                                  inputs: readonly [{
                                                                      name: "loanIds";
                                                                      type: "uint256[]";
                                                                      indexed: false;
                                                                      internalType: "uint256[]";
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "event";
                                                                  name: "MultiSourceLoanPendingUpdate";
                                                                  inputs: readonly [{
                                                                      name: "newAddress";
                                                                      type: "address";
                                                                      indexed: false;
                                                                      internalType: "address";
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "event";
                                                                  name: "MultiSourceLoanUpdated";
                                                                  inputs: readonly [{
                                                                      name: "newAddress";
                                                                      type: "address";
                                                                      indexed: false;
                                                                      internalType: "address";
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "event";
                                                                  name: "OwnershipTransferred";
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      type: "address";
                                                                      indexed: true;
                                                                      internalType: "address";
                                                                  }, {
                                                                      name: "newOwner";
                                                                      type: "address";
                                                                      indexed: true;
                                                                      internalType: "address";
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "event";
                                                                  name: "ProtocolFeePendingUpdate";
                                                                  inputs: readonly [{
                                                                      name: "fee";
                                                                      type: "tuple";
                                                                      indexed: false;
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }];
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "event";
                                                                  name: "ProtocolFeeUpdated";
                                                                  inputs: readonly [{
                                                                      name: "fee";
                                                                      type: "tuple";
                                                                      indexed: false;
                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                      components: readonly [{
                                                                          name: "recipient";
                                                                          type: "address";
                                                                          internalType: "address";
                                                                      }, {
                                                                          name: "fraction";
                                                                          type: "uint256";
                                                                          internalType: "uint256";
                                                                      }];
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "event";
                                                                  name: "SellAndRepayExecuted";
                                                                  inputs: readonly [{
                                                                      name: "loanIds";
                                                                      type: "uint256[]";
                                                                      indexed: false;
                                                                      internalType: "uint256[]";
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "event";
                                                                  name: "TaxesPendingUpdate";
                                                                  inputs: readonly [{
                                                                      name: "newTaxes";
                                                                      type: "tuple";
                                                                      indexed: false;
                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                      components: readonly [{
                                                                          name: "buyTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }, {
                                                                          name: "sellTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }];
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "event";
                                                                  name: "TaxesUpdated";
                                                                  inputs: readonly [{
                                                                      name: "taxes";
                                                                      type: "tuple";
                                                                      indexed: false;
                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                      components: readonly [{
                                                                          name: "buyTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }, {
                                                                          name: "sellTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }];
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "event";
                                                                  name: "TransferOwnerRequested";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      type: "address";
                                                                      indexed: false;
                                                                      internalType: "address";
                                                                  }];
                                                                  anonymous: false;
                                                              }, {
                                                                  type: "error";
                                                                  name: "AddressZeroError";
                                                                  inputs: readonly [];
                                                              }, {
                                                                  type: "error";
                                                                  name: "CouldNotReturnEthError";
                                                                  inputs: readonly [];
                                                              }, {
                                                                  type: "error";
                                                                  name: "InvalidAddressUpdateError";
                                                                  inputs: readonly [];
                                                              }, {
                                                                  type: "error";
                                                                  name: "InvalidCallbackError";
                                                                  inputs: readonly [];
                                                              }, {
                                                                  type: "error";
                                                                  name: "InvalidInputError";
                                                                  inputs: readonly [];
                                                              }, {
                                                                  type: "error";
                                                                  name: "InvalidTaxesError";
                                                                  inputs: readonly [{
                                                                      name: "newTaxes";
                                                                      type: "tuple";
                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                      components: readonly [{
                                                                          name: "buyTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }, {
                                                                          name: "sellTax";
                                                                          type: "uint128";
                                                                          internalType: "uint128";
                                                                      }];
                                                                  }];
                                                              }, {
                                                                  type: "error";
                                                                  name: "MarketplaceAddressNotWhitelisted";
                                                                  inputs: readonly [];
                                                              }, {
                                                                  type: "error";
                                                                  name: "OnlyLoanCallableError";
                                                                  inputs: readonly [];
                                                              }, {
                                                                  type: "error";
                                                                  name: "OnlyWethSupportedError";
                                                                  inputs: readonly [];
                                                              }, {
                                                                  type: "error";
                                                                  name: "TooEarlyError";
                                                                  inputs: readonly [{
                                                                      name: "_pendingProtocolFeeSetTime";
                                                                      type: "uint256";
                                                                      internalType: "uint256";
                                                                  }];
                                                              }, {
                                                                  type: "error";
                                                                  name: "TooSoonError";
                                                                  inputs: readonly [];
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.userVaultABI.html b/docs/0.17.2/variables/Internal.userVaultABI.html new file mode 100644 index 00000000..b0004869 --- /dev/null +++ b/docs/0.17.2/variables/Internal.userVaultABI.html @@ -0,0 +1,181 @@ +userVaultABI | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable userVaultABIConst

                                                              +
                                                              userVaultABI: readonly [{
                                                                  stateMutability: "nonpayable";
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "currencyManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "collectionManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AssetNotOwnedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CollectionNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CurrencyNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "LengthMismatchError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "NotApprovedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "VaultNotExistsError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "WithdrawingETHError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "WrongMethodError";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "spender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "Approval";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ApprovalForAll";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC20Deposited";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC20Withdrawn";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC721Deposited";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC721Withdrawn";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "OwnershipTransferred";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "Transfer";
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "ERC20BalanceOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ERC721OwnerOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "ETH";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "spender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "approve";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "balanceOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_assetRecipient";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "burn";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collections";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }, {
                                                                      name: "_tokenIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }, {
                                                                      name: "_tokens";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }];
                                                                  name: "burnAndWithdraw";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "depositERC20";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "depositERC721";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "depositERC721s";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "payable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "depositEth";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getApproved";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "isApprovedForAll";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "mint";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "name";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC721Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "owner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ownerOf";
                                                                  outputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "safeTransferFrom";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "safeTransferFrom";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  name: "setApprovalForAll";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "interfaceId";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  name: "supportsInterface";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "view";
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "symbol";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "pure";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "tokenURI";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "transferFrom";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "withdrawERC20";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_tokens";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }];
                                                                  name: "withdrawERC20s";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "withdrawERC721";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collections";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }, {
                                                                      name: "_tokenIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "withdrawERC721s";
                                                                  outputs: readonly [];
                                                              }, {
                                                                  stateMutability: "nonpayable";
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "withdrawEth";
                                                                  outputs: readonly [];
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/Internal.userVaultAbi-1.html b/docs/0.17.2/variables/Internal.userVaultAbi-1.html new file mode 100644 index 00000000..fb63a6f8 --- /dev/null +++ b/docs/0.17.2/variables/Internal.userVaultAbi-1.html @@ -0,0 +1,181 @@ +userVaultAbi | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable userVaultAbiConst

                                                              +
                                                              userVaultAbi: readonly [{
                                                                  type: "constructor";
                                                                  inputs: readonly [{
                                                                      name: "currencyManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "collectionManager";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ERC1155BalanceOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "ERC20BalanceOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ERC721OwnerOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "ETH";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "spender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "approve";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "balanceOf";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_assetRecipient";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "burn";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collections";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }, {
                                                                      name: "_tokenIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }, {
                                                                      name: "_tokens";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }, {
                                                                      name: "_erc1155Tokens";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }, {
                                                                      name: "_erc1155TokensIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "burnAndWithdraw";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "depositERC1155";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }, {
                                                                      name: "_amounts";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "depositERC1155s";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "depositERC20";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "depositERC721";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "depositERC721s";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "depositEth";
                                                                  outputs: readonly [];
                                                                  stateMutability: "payable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "getApproved";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "isApprovedForAll";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "mint";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "name";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC1155BatchReceived";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC1155Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "onERC721Received";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "owner";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "ownerOf";
                                                                  outputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "safeTransferFrom";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "data";
                                                                      internalType: "bytes";
                                                                      type: "bytes";
                                                                  }];
                                                                  name: "safeTransferFrom";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  name: "setApprovalForAll";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "interfaceId";
                                                                      internalType: "bytes4";
                                                                      type: "bytes4";
                                                                  }];
                                                                  name: "supportsInterface";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [];
                                                                  name: "symbol";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                                  stateMutability: "view";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "tokenURI";
                                                                  outputs: readonly [{
                                                                      name: "";
                                                                      internalType: "string";
                                                                      type: "string";
                                                                  }];
                                                                  stateMutability: "pure";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "transferFrom";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "transferOwnership";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "withdrawERC1155";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_tokens";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }, {
                                                                      name: "_tokenIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "withdrawERC1155s";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }];
                                                                  name: "withdrawERC20";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_tokens";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }];
                                                                  name: "withdrawERC20s";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                  }, {
                                                                      name: "_tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "withdrawERC721";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }, {
                                                                      name: "_collections";
                                                                      internalType: "address[]";
                                                                      type: "address[]";
                                                                  }, {
                                                                      name: "_tokenIds";
                                                                      internalType: "uint256[]";
                                                                      type: "uint256[]";
                                                                  }];
                                                                  name: "withdrawERC721s";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "function";
                                                                  inputs: readonly [{
                                                                      name: "_vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "withdrawEth";
                                                                  outputs: readonly [];
                                                                  stateMutability: "nonpayable";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "spender";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "Approval";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "owner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "operator";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "approved";
                                                                      internalType: "bool";
                                                                      type: "bool";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ApprovalForAll";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC1155Deposited";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC1155Withdrawn";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC20Deposited";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "token";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "amount";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC20Withdrawn";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC721Deposited";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "collection";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: false;
                                                                  }, {
                                                                      name: "tokenId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: false;
                                                                  }];
                                                                  name: "ERC721Withdrawn";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "user";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "newOwner";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "OwnershipTransferred";
                                                              }, {
                                                                  type: "event";
                                                                  anonymous: false;
                                                                  inputs: readonly [{
                                                                      name: "from";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "to";
                                                                      internalType: "address";
                                                                      type: "address";
                                                                      indexed: true;
                                                                  }, {
                                                                      name: "id";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                      indexed: true;
                                                                  }];
                                                                  name: "Transfer";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "AssetNotOwnedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CollectionNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "CurrencyNotWhitelistedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "InvalidCallerError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "LengthMismatchError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [{
                                                                      name: "vaultId";
                                                                      internalType: "uint256";
                                                                      type: "uint256";
                                                                  }];
                                                                  name: "NotApprovedError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "VaultNotExistsError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "WithdrawingETHError";
                                                              }, {
                                                                  type: "error";
                                                                  inputs: readonly [];
                                                                  name: "WrongMethodError";
                                                              }] = ...
                                                              +
                                                              + +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/0.17.2/variables/REJECTED.html b/docs/0.17.2/variables/REJECTED.html new file mode 100644 index 00000000..373ac534 --- /dev/null +++ b/docs/0.17.2/variables/REJECTED.html @@ -0,0 +1,43 @@ +REJECTED | Gondi JS SDK - v0.17.2
                                                              +
                                                              + +
                                                              +
                                                              +
                                                              +
                                                              + +

                                                              Variable REJECTEDConst

                                                              +
                                                              REJECTED: "rejected" = ...
                                                              +
                                                              +
                                                              \ No newline at end of file diff --git a/docs/lts/classes/Gondi.html b/docs/lts/classes/Gondi.html index 2fd842d3..7a393fb3 100644 --- a/docs/lts/classes/Gondi.html +++ b/docs/lts/classes/Gondi.html @@ -1,4 +1,4 @@ -Gondi | Gondi JS SDK - v0.17.0
                                                              +Gondi | Gondi JS SDK - v0.17.2
                                                              • Preparing search index...
                                                              • -
                                                              • The search index is not available
                                                              Gondi JS SDK - v0.17.0
                                                              +
                                                            • The search index is not available
                                                            • Gondi JS SDK - v0.17.2
                                                              @@ -20,7 +20,7 @@

                                                              Hierarchy

                                                              • Gondi
                                                              +
                                                            • Defined in src/gondi.ts:36
                                                            • @@ -113,7 +113,7 @@

                                                              Parameters

                                                              __namedParameters: GondiProps

                                                              Returns Gondi

                                                              +
                                                            • Defined in src/gondi.ts:44
                                                            • Methods

                                                              @@ -128,7 +128,7 @@

                                                              Parameters

                                                              offer: Types.SingleNftOfferInput

                                                              Returns Promise<{
                                                                  aprBps: bigint;
                                                                  borrowerAddress: `0x${string}`;
                                                                  capacity: bigint;
                                                                  contractAddress: `0x${string}`;
                                                                  duration: bigint;
                                                                  expirationTime: bigint;
                                                                  fee: bigint;
                                                                  lenderAddress: `0x${string}`;
                                                                  maxSeniorRepayment?: InputMaybe<bigint>;
                                                                  maxTrancheFloor?: InputMaybe<bigint>;
                                                                  nftId: number;
                                                                  offerHash: `0x${string}`;
                                                                  offerId: bigint;
                                                                  offerValidators: OfferValidatorInput[];
                                                                  principalAddress: `0x${string}`;
                                                                  principalAmount: bigint;
                                                                  requiresLiquidation?: InputMaybe<boolean>;
                                                                  signature: `0x${string}`;
                                                                  signerAddress?: InputMaybe<`0x${string}`>;
                                                                  id: string;
                                                                  nftCollateralAddress: `0x${string}`;
                                                                  nftCollateralTokenId: bigint;
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:59
                                                            • Returns Promise<{
                                                                  aprBps: bigint;
                                                                  borrowerAddress: `0x${string}`;
                                                                  capacity: bigint;
                                                                  collectionId: number;
                                                                  contractAddress: `0x${string}`;
                                                                  duration: bigint;
                                                                  expirationTime: bigint;
                                                                  fee: bigint;
                                                                  lenderAddress: `0x${string}`;
                                                                  maxSeniorRepayment?: InputMaybe<bigint>;
                                                                  maxTrancheFloor?: InputMaybe<bigint>;
                                                                  offerHash: `0x${string}`;
                                                                  offerId: bigint;
                                                                  offerValidators: OfferValidatorInput[];
                                                                  principalAddress: `0x${string}`;
                                                                  principalAmount: bigint;
                                                                  requiresLiquidation?: InputMaybe<boolean>;
                                                                  signature: `0x${string}`;
                                                                  signerAddress?: InputMaybe<`0x${string}`>;
                                                                  id: string;
                                                                  nftCollateralAddress: `0x${string}`;
                                                                  nftCollateralTokenId: bigint;
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:132
                                                              • @@ -154,7 +154,7 @@

                                                                Parameters

                                                                sellAndRepayOrderInput: NftOrderInput

                                                              Returns Promise<{
                                                                  amount: bigint;
                                                                  contractAddress: `0x${string}`;
                                                                  currencyAddress: `0x${string}`;
                                                                  expirationTime: bigint;
                                                                  isAsk: boolean;
                                                                  repaymentSignature?: InputMaybe<`0x${string}`>;
                                                                  replaceOrderId?: InputMaybe<number>;
                                                                  signature: InputMaybe<`0x${string}`>;
                                                                  startTime: bigint;
                                                                  taker?: InputMaybe<`0x${string}`>;
                                                                  tokenId: bigint;
                                                                  __typename?: "SellAndRepayOrder";
                                                                  id: string;
                                                                  status: string;
                                                                  repaymentCalldata: `0x${string}`;
                                                                  cancelCalldata: `0x${string}`;
                                                                  marketPlaceAddress: `0x${string}`;
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:189
                                                              • @@ -167,7 +167,7 @@

                                                                Parameters

                                                                order: Pick<SellAndRepayOrder, "cancelCalldata" | "marketPlaceAddress">

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<TransactionReceipt>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:204
                                                              • @@ -185,7 +185,7 @@
                                                                id
                                                                contractAddress: `0x${string}`

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      lender: `0x${string}`;
                                                                      offerId: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:210
                                                              • @@ -203,7 +203,7 @@
                                                                minIdcontractAddress: `0x${string}`

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      lender: `0x${string}`;
                                                                      minOfferId: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:216
                                                              • @@ -221,7 +221,7 @@
                                                                id
                                                                contractAddress: `0x${string}`

                                                              Returns Promise<HideOfferMutation>

                                                              +
                                                            • Defined in src/gondi.ts:222
                                                              • @@ -239,7 +239,7 @@
                                                                id
                                                                contractAddress: `0x${string}`

                                                              Returns Promise<UnhideOfferMutation>

                                                              +
                                                            • Defined in src/gondi.ts:226
                                                            • Returns Promise<{
                                                                  id: string;
                                                                  loanId: string;
                                                                  duration: bigint;
                                                                  principalAmount: bigint;
                                                                  renegotiationId: bigint;
                                                                  requiresLiquidation?: InputMaybe<boolean>;
                                                                  aprBps: bigint;
                                                                  expirationTime: bigint;
                                                                  targetPrincipal?: InputMaybe<bigint[]>;
                                                                  strictImprovement?: InputMaybe<boolean>;
                                                                  trancheIndex?: InputMaybe<bigint[]>;
                                                                  lenderAddress: `0x${string}`;
                                                                  signerAddress?: InputMaybe<`0x${string}`>;
                                                                  offerHash: `0x${string}`;
                                                                  feeAmount: bigint;
                                                                  isAddNewTranche?: InputMaybe<boolean>;
                                                                  signature: `0x${string}`;
                                                              } | {
                                                                  offerHash: `0x${string}`;
                                                                  signature: `0x${string}`;
                                                                  renegotiationId: bigint;
                                                                  targetPrincipal: bigint[];
                                                                  trancheIndex: bigint[];
                                                                  lenderAddress: `0x${string}`;
                                                                  signerAddress: InputMaybe<`0x${string}`>;
                                                                  loanId: string;
                                                                  duration: bigint;
                                                                  principalAmount: bigint;
                                                                  requiresLiquidation?: InputMaybe<boolean>;
                                                                  aprBps: bigint;
                                                                  expirationTime: bigint;
                                                                  strictImprovement?: InputMaybe<boolean>;
                                                                  feeAmount: bigint;
                                                                  isAddNewTranche?: InputMaybe<boolean>;
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:233
                                                              • @@ -270,7 +270,7 @@
                                                                id
                                                                contractAddress: `0x${string}`

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      lender: `0x${string}`;
                                                                      renegotiationId: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:310
                                                              • @@ -288,7 +288,7 @@
                                                                id
                                                                contractAddress: `0x${string}`

                                                              Returns Promise<HideRenegotiationOfferMutation>

                                                              +
                                                            • Defined in src/gondi.ts:316
                                                              • @@ -306,7 +306,7 @@
                                                                id
                                                                contractAddress: `0x${string}`

                                                              Returns Promise<UnhideRenegotiationOfferMutation>

                                                              +
                                                            • Defined in src/gondi.ts:323
                                                              • @@ -322,7 +322,7 @@
                                                                __namedParameters: id: number

                                                              Returns Promise<HideOrderMutation>

                                                              +
                                                            • Defined in src/gondi.ts:336
                                                              • @@ -338,7 +338,7 @@
                                                                __namedParameters: id: number

                                                              Returns Promise<ShowOrderMutation>

                                                              +
                                                            • Defined in src/gondi.ts:340
                                                              • @@ -356,7 +356,7 @@
                                                                minIdcontractAddress: `0x${string}`

                                                              Returns Promise<void | {
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      lender: `0x${string}`;
                                                                      minRenegotiationId: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:344
                                                            • Returns {
                                                                  offer: Omit<
                                                              SingleNftOffer | Types.CollectionOffer, "nftId">;
                                                                  amount?: bigint;
                                                                  lenderOfferSignature: `0x${string}`;
                                                              }[]

                                                              +
                                                            • Defined in src/gondi.ts:356
                                                            • Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loan: {
                                                                          contractAddress: `0x${string}`;
                                                                          borrower: `0x${string}`;
                                                                          nftCollateralTokenId: bigint;
                                                                          nftCollateralAddress: `0x${string}`;
                                                                          principalAddress: `0x${string}`;
                                                                          principalAmount: bigint;
                                                                          startTime: bigint;
                                                                          duration: bigint;
                                                                          source: readonly {
                                                                              loanId: bigint;
                                                                              lender: `0x${string}`;
                                                                              principalAmount: bigint;
                                                                              accruedInterest: bigint;
                                                                              startTime: bigint;
                                                                              aprBps: bigint;
                                                                          }[];
                                                                          id: string;
                                                                      };
                                                                      loanId: bigint;
                                                                      offerId: string;
                                                                  }>);
                                                              } | {
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loan: {
                                                                          contractAddress: `0x${string}`;
                                                                          borrower: `0x${string}`;
                                                                          nftCollateralTokenId: bigint;
                                                                          nftCollateralAddress: `0x${string}`;
                                                                          principalAddress: `0x${string}`;
                                                                          principalAmount: bigint;
                                                                          startTime: bigint;
                                                                          duration: bigint;
                                                                          tranche: readonly {
                                                                              loanId: bigint;
                                                                              floor: bigint;
                                                                              principalAmount: bigint;
                                                                              lender: `0x${string}`;
                                                                              accruedInterest: bigint;
                                                                              startTime: bigint;
                                                                              aprBps: bigint;
                                                                          }[];
                                                                          protocolFee: bigint;
                                                                          id: string;
                                                                      };
                                                                      loanId: bigint;
                                                                      offerIds: string[];
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:381
                                                            • Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loan: {
                                                                          contractAddress: `0x${string}`;
                                                                          borrower: `0x${string}`;
                                                                          nftCollateralTokenId: bigint;
                                                                          nftCollateralAddress: `0x${string}`;
                                                                          principalAddress: `0x${string}`;
                                                                          principalAmount: bigint;
                                                                          startTime: bigint;
                                                                          duration: bigint;
                                                                          tranche: readonly {
                                                                              loanId: bigint;
                                                                              floor: bigint;
                                                                              principalAmount: bigint;
                                                                              lender: `0x${string}`;
                                                                              accruedInterest: bigint;
                                                                              startTime: bigint;
                                                                              aprBps: bigint;
                                                                          }[];
                                                                          protocolFee: bigint;
                                                                          id: string;
                                                                      };
                                                                      loanId: bigint;
                                                                      offerIds: string[];
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:386
                                                              • @@ -424,7 +424,7 @@
                                                                loanIdOptional nftReceiver?: `0x${string}`

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loanId: bigint;
                                                                      totalRepayment: bigint;
                                                                      fee: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:402
                                                            • Returns Promise<{
                                                                  offers: ({
                                                                      type: undefined | "CollectionOffer" | "SingleNFTOffer";
                                                                      lender: undefined | null | `0x${string}`;
                                                                      borrower: undefined | null | `0x${string}`;
                                                                      signer: undefined | null | `0x${string}`;
                                                                      offerValidators: {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[] | {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[];
                                                                      nftCollateralAddress: `0x${string}`;
                                                                      nftCollateralTokenId: bigint;
                                                                      id: string;
                                                                      offerId: bigint;
                                                                      lenderAddress?: null | `0x${string}`;
                                                                      borrowerAddress?: null | `0x${string}`;
                                                                      signerAddress?: null | `0x${string}`;
                                                                      contractAddress: `0x${string}`;
                                                                      requiresLiquidation?: null | boolean;
                                                                      principalAddress: `0x${string}`;
                                                                      principalAmount: bigint;
                                                                      aprBps: bigint;
                                                                      fee: bigint;
                                                                      capacity: bigint;
                                                                      expirationTime: bigint;
                                                                      duration: bigint;
                                                                      status: string;
                                                                      offerHash?: null | `0x${string}`;
                                                                      signature?: null | `0x${string}`;
                                                                      createdDate?: null | Date;
                                                                      repayment: bigint;
                                                                      hidden?: null | boolean;
                                                                      maxSeniorRepayment: bigint;
                                                                      collection: {
                                                                          __typename?: "Collection";
                                                                          id: string;
                                                                          slug: string;
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: `0x${string}`;
                                                                          };
                                                                      };
                                                                      currency: {
                                                                          __typename?: "Currency";
                                                                          symbol: string;
                                                                          decimals: number;
                                                                          address: `0x${string}`;
                                                                      };
                                                                      validators: {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[];
                                                                  } | {
                                                                      type: undefined | "CollectionOffer" | "SingleNFTOffer";
                                                                      lender: undefined | null | `0x${string}`;
                                                                      borrower: undefined | null | `0x${string}`;
                                                                      signer: undefined | null | `0x${string}`;
                                                                      offerValidators: {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[] | {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[];
                                                                      nftCollateralAddress: `0x${string}`;
                                                                      nftCollateralTokenId: bigint;
                                                                      id: string;
                                                                      offerId: bigint;
                                                                      lenderAddress?: null | `0x${string}`;
                                                                      borrowerAddress?: null | `0x${string}`;
                                                                      signerAddress?: null | `0x${string}`;
                                                                      contractAddress: `0x${string}`;
                                                                      requiresLiquidation?: null | boolean;
                                                                      principalAddress: `0x${string}`;
                                                                      principalAmount: bigint;
                                                                      aprBps: bigint;
                                                                      fee: bigint;
                                                                      capacity: bigint;
                                                                      expirationTime: bigint;
                                                                      duration: bigint;
                                                                      status: string;
                                                                      offerHash?: null | `0x${string}`;
                                                                      signature?: null | `0x${string}`;
                                                                      createdDate?: null | Date;
                                                                      repayment: bigint;
                                                                      hidden?: null | boolean;
                                                                      maxSeniorRepayment: bigint;
                                                                      nft: {
                                                                          __typename?: "NFT";
                                                                          id: string;
                                                                          tokenId: bigint;
                                                                          collection?: null | {
                                                                              __typename?: "Collection";
                                                                              id: string;
                                                                              slug: string;
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: `0x${string}`;
                                                                              };
                                                                          };
                                                                      };
                                                                      currency: {
                                                                          __typename?: "Currency";
                                                                          symbol: string;
                                                                          decimals: number;
                                                                          address: `0x${string}`;
                                                                      };
                                                                      validators: {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[];
                                                                  })[];
                                                                  hasNextPage: true;
                                                                  cursor: string;
                                                              } | {
                                                                  offers: ({
                                                                      type: undefined | "CollectionOffer" | "SingleNFTOffer";
                                                                      lender: undefined | null | `0x${string}`;
                                                                      borrower: undefined | null | `0x${string}`;
                                                                      signer: undefined | null | `0x${string}`;
                                                                      offerValidators: {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[] | {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[];
                                                                      nftCollateralAddress: `0x${string}`;
                                                                      nftCollateralTokenId: bigint;
                                                                      id: string;
                                                                      offerId: bigint;
                                                                      lenderAddress?: null | `0x${string}`;
                                                                      borrowerAddress?: null | `0x${string}`;
                                                                      signerAddress?: null | `0x${string}`;
                                                                      contractAddress: `0x${string}`;
                                                                      requiresLiquidation?: null | boolean;
                                                                      principalAddress: `0x${string}`;
                                                                      principalAmount: bigint;
                                                                      aprBps: bigint;
                                                                      fee: bigint;
                                                                      capacity: bigint;
                                                                      expirationTime: bigint;
                                                                      duration: bigint;
                                                                      status: string;
                                                                      offerHash?: null | `0x${string}`;
                                                                      signature?: null | `0x${string}`;
                                                                      createdDate?: null | Date;
                                                                      repayment: bigint;
                                                                      hidden?: null | boolean;
                                                                      maxSeniorRepayment: bigint;
                                                                      collection: {
                                                                          __typename?: "Collection";
                                                                          id: string;
                                                                          slug: string;
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: `0x${string}`;
                                                                          };
                                                                      };
                                                                      currency: {
                                                                          __typename?: "Currency";
                                                                          symbol: string;
                                                                          decimals: number;
                                                                          address: `0x${string}`;
                                                                      };
                                                                      validators: {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[];
                                                                  } | {
                                                                      type: undefined | "CollectionOffer" | "SingleNFTOffer";
                                                                      lender: undefined | null | `0x${string}`;
                                                                      borrower: undefined | null | `0x${string}`;
                                                                      signer: undefined | null | `0x${string}`;
                                                                      offerValidators: {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[] | {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[];
                                                                      nftCollateralAddress: `0x${string}`;
                                                                      nftCollateralTokenId: bigint;
                                                                      id: string;
                                                                      offerId: bigint;
                                                                      lenderAddress?: null | `0x${string}`;
                                                                      borrowerAddress?: null | `0x${string}`;
                                                                      signerAddress?: null | `0x${string}`;
                                                                      contractAddress: `0x${string}`;
                                                                      requiresLiquidation?: null | boolean;
                                                                      principalAddress: `0x${string}`;
                                                                      principalAmount: bigint;
                                                                      aprBps: bigint;
                                                                      fee: bigint;
                                                                      capacity: bigint;
                                                                      expirationTime: bigint;
                                                                      duration: bigint;
                                                                      status: string;
                                                                      offerHash?: null | `0x${string}`;
                                                                      signature?: null | `0x${string}`;
                                                                      createdDate?: null | Date;
                                                                      repayment: bigint;
                                                                      hidden?: null | boolean;
                                                                      maxSeniorRepayment: bigint;
                                                                      nft: {
                                                                          __typename?: "NFT";
                                                                          id: string;
                                                                          tokenId: bigint;
                                                                          collection?: null | {
                                                                              __typename?: "Collection";
                                                                              id: string;
                                                                              slug: string;
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: `0x${string}`;
                                                                              };
                                                                          };
                                                                      };
                                                                      currency: {
                                                                          __typename?: "Currency";
                                                                          symbol: string;
                                                                          decimals: number;
                                                                          address: `0x${string}`;
                                                                      };
                                                                      validators: {
                                                                          __typename?: "OfferValidator";
                                                                          arguments: `0x${string}`;
                                                                          validator: `0x${string}`;
                                                                      }[];
                                                                  })[];
                                                                  hasNextPage: false;
                                                                  cursor: null;
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:418
                                                            • Returns Promise<{
                                                                  loans: {
                                                                      type: undefined | "MultiSourceLoan";
                                                                      contractAddress: `0x${string}`;
                                                                      nftCollateralTokenId: bigint;
                                                                      nftCollateralAddress: undefined | `0x${string}`;
                                                                      borrower: `0x${string}`;
                                                                      startTime: bigint;
                                                                      source: {
                                                                          lender: `0x${string}`;
                                                                          loanId: bigint;
                                                                          startTime: bigint;
                                                                          __typename?: "Source";
                                                                          id: string;
                                                                          originationFee: bigint;
                                                                          principalAmount: bigint;
                                                                          lenderAddress: string;
                                                                          accruedInterest: bigint;
                                                                          aprBps: bigint;
                                                                      }[];
                                                                      id: string;
                                                                      address: `0x${string}`;
                                                                      loanId: number;
                                                                      timestamp: Date;
                                                                      txHash: `0x${string}`;
                                                                      indexInBlock: number;
                                                                      borrowerAddress: `0x${string}`;
                                                                      principalAddress: `0x${string}`;
                                                                      duration: bigint;
                                                                      status: string;
                                                                      principalAmount: bigint;
                                                                      blendedAprBps: number;
                                                                      totalOriginationFee: bigint;
                                                                      protocolFee: bigint;
                                                                      offer: {
                                                                          __typename?: "CollectionOffer";
                                                                          offerId: bigint;
                                                                          signerAddress?: null | `0x${string}`;
                                                                      } | {
                                                                          __typename?: "SingleNFTOffer";
                                                                          offerId: bigint;
                                                                          signerAddress?: null | `0x${string}`;
                                                                      };
                                                                      currency: {
                                                                          __typename?: "Currency";
                                                                          symbol: string;
                                                                          decimals: number;
                                                                          address: `0x${string}`;
                                                                      };
                                                                      repaidActivity?: null | {
                                                                          __typename?: "LoanRepaid";
                                                                          totalInterest: bigint;
                                                                          timestamp: Date;
                                                                      };
                                                                      nft: {
                                                                          __typename?: "NFT";
                                                                          id: string;
                                                                          name?: null | string;
                                                                          tokenId: bigint;
                                                                          nftId: string;
                                                                          owner?: null | `0x${string}`;
                                                                          image?: null | {
                                                                              __typename?: "Asset";
                                                                              data: string;
                                                                              cacheUrl?: null | string;
                                                                              contentTypeMime: string;
                                                                              accessTypeName: string;
                                                                          };
                                                                          collection?: null | {
                                                                              __typename?: "Collection";
                                                                              id: string;
                                                                              slug: string;
                                                                              name?: null | string;
                                                                              nftsCount?: null | number;
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: `0x${string}`;
                                                                              };
                                                                          };
                                                                      };
                                                                      sources: {
                                                                          __typename?: "Source";
                                                                          id: string;
                                                                          loanId: string;
                                                                          originationFee: bigint;
                                                                          principalAmount: bigint;
                                                                          lenderAddress: string;
                                                                          accruedInterest: bigint;
                                                                          aprBps: bigint;
                                                                          startTime: Date;
                                                                      }[];
                                                                  }[];
                                                                  hasNextPage: true;
                                                                  cursor: string;
                                                              } | {
                                                                  loans: {
                                                                      type: undefined | "MultiSourceLoan";
                                                                      contractAddress: `0x${string}`;
                                                                      nftCollateralTokenId: bigint;
                                                                      nftCollateralAddress: undefined | `0x${string}`;
                                                                      borrower: `0x${string}`;
                                                                      startTime: bigint;
                                                                      source: {
                                                                          lender: `0x${string}`;
                                                                          loanId: bigint;
                                                                          startTime: bigint;
                                                                          __typename?: "Source";
                                                                          id: string;
                                                                          originationFee: bigint;
                                                                          principalAmount: bigint;
                                                                          lenderAddress: string;
                                                                          accruedInterest: bigint;
                                                                          aprBps: bigint;
                                                                      }[];
                                                                      id: string;
                                                                      address: `0x${string}`;
                                                                      loanId: number;
                                                                      timestamp: Date;
                                                                      txHash: `0x${string}`;
                                                                      indexInBlock: number;
                                                                      borrowerAddress: `0x${string}`;
                                                                      principalAddress: `0x${string}`;
                                                                      duration: bigint;
                                                                      status: string;
                                                                      principalAmount: bigint;
                                                                      blendedAprBps: number;
                                                                      totalOriginationFee: bigint;
                                                                      protocolFee: bigint;
                                                                      offer: {
                                                                          __typename?: "CollectionOffer";
                                                                          offerId: bigint;
                                                                          signerAddress?: null | `0x${string}`;
                                                                      } | {
                                                                          __typename?: "SingleNFTOffer";
                                                                          offerId: bigint;
                                                                          signerAddress?: null | `0x${string}`;
                                                                      };
                                                                      currency: {
                                                                          __typename?: "Currency";
                                                                          symbol: string;
                                                                          decimals: number;
                                                                          address: `0x${string}`;
                                                                      };
                                                                      repaidActivity?: null | {
                                                                          __typename?: "LoanRepaid";
                                                                          totalInterest: bigint;
                                                                          timestamp: Date;
                                                                      };
                                                                      nft: {
                                                                          __typename?: "NFT";
                                                                          id: string;
                                                                          name?: null | string;
                                                                          tokenId: bigint;
                                                                          nftId: string;
                                                                          owner?: null | `0x${string}`;
                                                                          image?: null | {
                                                                              __typename?: "Asset";
                                                                              data: string;
                                                                              cacheUrl?: null | string;
                                                                              contentTypeMime: string;
                                                                              accessTypeName: string;
                                                                          };
                                                                          collection?: null | {
                                                                              __typename?: "Collection";
                                                                              id: string;
                                                                              slug: string;
                                                                              name?: null | string;
                                                                              nftsCount?: null | number;
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: `0x${string}`;
                                                                              };
                                                                          };
                                                                      };
                                                                      sources: {
                                                                          __typename?: "Source";
                                                                          id: string;
                                                                          loanId: string;
                                                                          originationFee: bigint;
                                                                          principalAmount: bigint;
                                                                          lenderAddress: string;
                                                                          accruedInterest: bigint;
                                                                          aprBps: bigint;
                                                                          startTime: Date;
                                                                      }[];
                                                                  }[];
                                                                  hasNextPage: false;
                                                                  cursor: null;
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:437
                                                              • @@ -466,7 +466,7 @@
                                                                __namedParameters: nft: number

                                                              Returns Promise<ListNftMutation>

                                                              +
                                                            • Defined in src/gondi.ts:445
                                                              • @@ -482,7 +482,7 @@
                                                                __namedParameters: nft: number

                                                              Returns Promise<UnlistNftMutation>

                                                              +
                                                            • Defined in src/gondi.ts:449
                                                            • Returns Promise<{
                                                                  listings: {
                                                                      __typename?: "Listing";
                                                                      id: string;
                                                                      marketplaceName: MarketplaceEnum;
                                                                      createdDate: Date;
                                                                      desiredDuration?: null | number;
                                                                      desiredPrincipalAddress?: null | `0x${string}`;
                                                                      user: {
                                                                          __typename?: "User";
                                                                          walletAddress: `0x${string}`;
                                                                      };
                                                                      nft: {
                                                                          __typename?: "NFT";
                                                                          id: string;
                                                                          tokenId: bigint;
                                                                          collection?: null | {
                                                                              __typename?: "Collection";
                                                                              id: string;
                                                                              slug: string;
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: `0x${string}`;
                                                                              };
                                                                          };
                                                                      };
                                                                  }[];
                                                                  hasNextPage: true;
                                                                  cursor: string;
                                                              } | {
                                                                  listings: {
                                                                      __typename?: "Listing";
                                                                      id: string;
                                                                      marketplaceName: MarketplaceEnum;
                                                                      createdDate: Date;
                                                                      desiredDuration?: null | number;
                                                                      desiredPrincipalAddress?: null | `0x${string}`;
                                                                      user: {
                                                                          __typename?: "User";
                                                                          walletAddress: `0x${string}`;
                                                                      };
                                                                      nft: {
                                                                          __typename?: "NFT";
                                                                          id: string;
                                                                          tokenId: bigint;
                                                                          collection?: null | {
                                                                              __typename?: "Collection";
                                                                              id: string;
                                                                              slug: string;
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: `0x${string}`;
                                                                              };
                                                                          };
                                                                      };
                                                                  }[];
                                                                  hasNextPage: false;
                                                                  cursor: null;
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:453
                                                              • @@ -508,7 +508,7 @@

                                                                Parameters

                                                                props: Object

                                                              Returns Promise<number>

                                                              +
                                                            • Defined in src/gondi.ts:469
                                                              • @@ -530,7 +530,7 @@
                                                                Optional Optional cursor?: string

                                                              Returns Promise<{
                                                                  collections: {
                                                                      __typename?: "Collection";
                                                                      id: string;
                                                                      name?: null | string;
                                                                      slug: string;
                                                                      description?: null | string;
                                                                      discordUrl?: null | string;
                                                                      twitterUsername?: null | string;
                                                                      externalUrl?: null | string;
                                                                      collectionUrl?: null | string;
                                                                      verified: boolean;
                                                                      wrapperCollections: {
                                                                          __typename?: "Collection";
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: `0x${string}`;
                                                                          };
                                                                      }[];
                                                                      image?: null | {
                                                                          __typename?: "Asset";
                                                                          cacheUrl?: null | string;
                                                                      };
                                                                      bannerImage?: null | {
                                                                          __typename?: "Asset";
                                                                          cacheUrl?: null | string;
                                                                      };
                                                                      contractData: {
                                                                          __typename?: "ContractData";
                                                                          blockchain: string;
                                                                          contractAddress: `0x${string}`;
                                                                          createdDate: Date;
                                                                          creatorAddress?: null | `0x${string}`;
                                                                      };
                                                                      statistics: {
                                                                          __typename?: "CollectionStatistics";
                                                                          floorPrice7d?: null | number;
                                                                          floorPrice30d?: null | number;
                                                                          totalVolume?: null | number;
                                                                          totalVolume1y?: null | number;
                                                                          totalVolume3m?: null | number;
                                                                          totalVolume1m?: null | number;
                                                                          totalVolume1w?: null | number;
                                                                          totalLoanVolume: bigint;
                                                                          totalLoanVolume1w: bigint;
                                                                          totalLoanVolume1m: bigint;
                                                                          totalLoanVolume3m: bigint;
                                                                          totalLoanVolume1y: bigint;
                                                                          numberOfPricedNfts: number;
                                                                          nftsCount?: null | number;
                                                                          percentageInOutstandingLoans: number;
                                                                          repaymentRate: number;
                                                                          numberOfOffers: number;
                                                                          floorPrice?: null | {
                                                                              __typename?: "CurrencyAmount";
                                                                              amount: number;
                                                                              currency: {
                                                                                  __typename?: "Currency";
                                                                                  address: `0x${string}`;
                                                                                  decimals: number;
                                                                              };
                                                                          };
                                                                          bestOffer?: null | {
                                                                              __typename?: "CurrencyAmount";
                                                                              amount: number;
                                                                              currency: {
                                                                                  __typename?: "Currency";
                                                                                  address: `0x${string}`;
                                                                                  decimals: number;
                                                                              };
                                                                          };
                                                                      };
                                                                  }[];
                                                                  pageInfo: {
                                                                      __typename?: "PageInfo";
                                                                      endCursor?: null | string;
                                                                      hasNextPage: boolean;
                                                                  };
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:484
                                                              • @@ -548,7 +548,7 @@
                                                                slugOptional contractAddress?: undefined

                                                              Returns Promise<number>

                                                              +
                                                            • Defined in src/gondi.ts:497
                                                            • @@ -563,7 +563,7 @@
                                                              Optional contractAddress: `0x${string}`
                                                            • Returns Promise<number[]>

                                                              +
                                                            • Defined in src/gondi.ts:498
                                                            • Returns Promise<{
                                                                  ownedNfts: {
                                                                      __typename?: "NFT";
                                                                      id: string;
                                                                      tokenId: bigint;
                                                                      price?: null | bigint;
                                                                      priceCurrencyAddress?: null | string;
                                                                      collection?: null | {
                                                                          __typename?: "Collection";
                                                                          id: string;
                                                                          contractData: {
                                                                              __typename?: "ContractData";
                                                                              contractAddress: `0x${string}`;
                                                                          };
                                                                          wrapperCollections: {
                                                                              __typename?: "Collection";
                                                                              contractData: {
                                                                                  __typename?: "ContractData";
                                                                                  contractAddress: `0x${string}`;
                                                                              };
                                                                          }[];
                                                                      };
                                                                      activeLoan?: null | {
                                                                          __typename?: "MultiSourceLoan";
                                                                          id: string;
                                                                      };
                                                                      statistics: {
                                                                          __typename?: "NftStatistics";
                                                                          lastSale?: null | {
                                                                              __typename?: "Sale";
                                                                              order: {
                                                                                  __typename?: "CollectionOrder";
                                                                                  price: bigint;
                                                                                  currency: {
                                                                                      __typename?: "Currency";
                                                                                      address: `0x${string}`;
                                                                                      decimals: number;
                                                                                  };
                                                                              } | {
                                                                                  __typename?: "SellAndRepayOrder";
                                                                                  price: bigint;
                                                                                  currency: {
                                                                                      __typename?: "Currency";
                                                                                      address: `0x${string}`;
                                                                                      decimals: number;
                                                                                  };
                                                                              } | {
                                                                                  __typename?: "SingleNFTOrder";
                                                                                  price: bigint;
                                                                                  currency: {
                                                                                      __typename?: "Currency";
                                                                                      address: `0x${string}`;
                                                                                      decimals: number;
                                                                                  };
                                                                              };
                                                                          };
                                                                          topTraitFloorPrice?: null | {
                                                                              __typename?: "CurrencyAmount";
                                                                              amount: number;
                                                                              currency: {
                                                                                  __typename?: "Currency";
                                                                                  address: `0x${string}`;
                                                                                  decimals: number;
                                                                              };
                                                                          };
                                                                      };
                                                                  }[];
                                                                  pageInfo: {
                                                                      __typename?: "PageInfo";
                                                                      endCursor?: null | string;
                                                                      hasNextPage: boolean;
                                                                  };
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:527
                                                            • Returns Promise<number>

                                                              +
                                                            • Defined in src/gondi.ts:533
                                                              • @@ -608,7 +608,7 @@
                                                                __namedParameters: loan: Object

                                                              Returns Promise<boolean>

                                                              +
                                                            • Defined in src/gondi.ts:539
                                                              • @@ -626,7 +626,7 @@
                                                                aprBpsImprovementPercentag
                                                                refinancings: {
                                                                    loan: Object;
                                                                    source: {
                                                                        loanId: bigint;
                                                                        floor: bigint;
                                                                        principalAmount: bigint;
                                                                        lender: `0x${string}`;
                                                                        accruedInterest: bigint;
                                                                        startTime: bigint;
                                                                        aprBps: bigint;
                                                                    } & {
                                                                        loanIndex: number;
                                                                    };
                                                                    refinancingPrincipal: bigint;
                                                                }[]

                                                              Returns Promise<({
                                                                  status: "fulfilled";
                                                                  value: {
                                                                      txHash: `0x${string}`;
                                                                      waitTxInBlock: (() => Promise<{
                                                                          results: {
                                                                              renegotiationId: bigint;
                                                                              oldLoanId: bigint;
                                                                              newLoanId: bigint;
                                                                              loan: {
                                                                                  borrower: `0x${string}`;
                                                                                  nftCollateralTokenId: bigint;
                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                  principalAddress: `0x${string}`;
                                                                                  principalAmount: bigint;
                                                                                  startTime: bigint;
                                                                                  duration: bigint;
                                                                                  source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                              };
                                                                              fee: bigint;
                                                                          }[];
                                                                      }>);
                                                                  } | {
                                                                      txHash: `0x${string}`;
                                                                      waitTxInBlock: (() => Promise<{
                                                                          results: {
                                                                              renegotiationId: bigint;
                                                                              oldLoanId: bigint;
                                                                              newLoanId: bigint;
                                                                              loan: {
                                                                                  borrower: `0x${string}`;
                                                                                  nftCollateralTokenId: bigint;
                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                  principalAddress: `0x${string}`;
                                                                                  principalAmount: bigint;
                                                                                  startTime: bigint;
                                                                                  duration: bigint;
                                                                                  tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                                  protocolFee: bigint;
                                                                              };
                                                                              fee: bigint;
                                                                          }[];
                                                                      }>);
                                                                  };
                                                                  reason: undefined;
                                                              } | {
                                                                  status: "rejected";
                                                                  reason: unknown;
                                                                  value: any[];
                                                              })[]>

                                                              +
                                                            • Defined in src/gondi.ts:572
                                                              • @@ -646,7 +646,7 @@
                                                                loanloanId: bigint

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loan: {
                                                                          contractAddress: `0x${string}`;
                                                                          borrower: `0x${string}`;
                                                                          nftCollateralTokenId: bigint;
                                                                          nftCollateralAddress: `0x${string}`;
                                                                          principalAddress: `0x${string}`;
                                                                          principalAmount: bigint;
                                                                          startTime: bigint;
                                                                          duration: bigint;
                                                                          tranche: readonly {
                                                                              loanId: bigint;
                                                                              floor: bigint;
                                                                              principalAmount: bigint;
                                                                              lender: `0x${string}`;
                                                                              accruedInterest: bigint;
                                                                              startTime: bigint;
                                                                              aprBps: bigint;
                                                                          }[];
                                                                          protocolFee: bigint;
                                                                          id: string;
                                                                      };
                                                                      loanId: bigint;
                                                                      renegotiationId: string;
                                                                  }>);
                                                              } | {
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loan: {
                                                                          contractAddress: `0x${string}`;
                                                                          borrower: `0x${string}`;
                                                                          nftCollateralTokenId: bigint;
                                                                          nftCollateralAddress: `0x${string}`;
                                                                          principalAddress: `0x${string}`;
                                                                          principalAmount: bigint;
                                                                          startTime: bigint;
                                                                          duration: bigint;
                                                                          source: readonly {
                                                                              loanId: bigint;
                                                                              lender: `0x${string}`;
                                                                              principalAmount: bigint;
                                                                              accruedInterest: bigint;
                                                                              startTime: bigint;
                                                                              aprBps: bigint;
                                                                          }[];
                                                                          id: string;
                                                                      };
                                                                      loanId: bigint;
                                                                      renegotiationId: string;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:658
                                                              • @@ -666,7 +666,7 @@
                                                                loanloanId: bigint

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loan: {
                                                                          contractAddress: `0x${string}`;
                                                                          borrower: `0x${string}`;
                                                                          nftCollateralTokenId: bigint;
                                                                          nftCollateralAddress: `0x${string}`;
                                                                          principalAddress: `0x${string}`;
                                                                          principalAmount: bigint;
                                                                          startTime: bigint;
                                                                          duration: bigint;
                                                                          tranche: readonly {
                                                                              loanId: bigint;
                                                                              floor: bigint;
                                                                              principalAmount: bigint;
                                                                              lender: `0x${string}`;
                                                                              accruedInterest: bigint;
                                                                              startTime: bigint;
                                                                              aprBps: bigint;
                                                                          }[];
                                                                          protocolFee: bigint;
                                                                          id: string;
                                                                      };
                                                                      loanId: bigint;
                                                                      renegotiationId: string;
                                                                  }>);
                                                              } | {
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loan: {
                                                                          contractAddress: `0x${string}`;
                                                                          borrower: `0x${string}`;
                                                                          nftCollateralTokenId: bigint;
                                                                          nftCollateralAddress: `0x${string}`;
                                                                          principalAddress: `0x${string}`;
                                                                          principalAmount: bigint;
                                                                          startTime: bigint;
                                                                          duration: bigint;
                                                                          source: readonly {
                                                                              loanId: bigint;
                                                                              lender: `0x${string}`;
                                                                              principalAmount: bigint;
                                                                              accruedInterest: bigint;
                                                                              startTime: bigint;
                                                                              aprBps: bigint;
                                                                          }[];
                                                                          id: string;
                                                                      };
                                                                      loanId: bigint;
                                                                      renegotiationId: string;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:674
                                                              • @@ -686,7 +686,7 @@
                                                                loanloanId: bigint

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loan: {
                                                                          contractAddress: `0x${string}`;
                                                                          borrower: `0x${string}`;
                                                                          nftCollateralTokenId: bigint;
                                                                          nftCollateralAddress: `0x${string}`;
                                                                          principalAddress: `0x${string}`;
                                                                          principalAmount: bigint;
                                                                          startTime: bigint;
                                                                          duration: bigint;
                                                                          tranche: readonly {
                                                                              loanId: bigint;
                                                                              floor: bigint;
                                                                              principalAmount: bigint;
                                                                              lender: `0x${string}`;
                                                                              accruedInterest: bigint;
                                                                              startTime: bigint;
                                                                              aprBps: bigint;
                                                                          }[];
                                                                          protocolFee: bigint;
                                                                          id: string;
                                                                      };
                                                                      loanId: bigint;
                                                                      renegotiationId: string;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:689
                                                              • @@ -703,7 +703,7 @@
                                                                delegations: Returns Promise<{
                                                                    txHash: `0x${string}`;
                                                                    waitTxInBlock: (() => Promise<{
                                                                        results: {
                                                                            loanId: bigint;
                                                                            delegate: `0x${string}`;
                                                                            value: boolean;
                                                                        }[];
                                                                    }>);
                                                                }>
                                                              +
                                                            • Defined in src/gondi.ts:709
                                                              • @@ -730,7 +730,7 @@
                                                                Optional Returns Promise<{
                                                                    txHash: `0x${string}`;
                                                                    waitTxInBlock: (() => Promise<{
                                                                        loan: {
                                                                            loanId: bigint;
                                                                            contractAddress: `0x${string}`;
                                                                            borrower: `0x${string}`;
                                                                            nftCollateralTokenId: bigint;
                                                                            nftCollateralAddress: `0x${string}`;
                                                                            principalAddress: `0x${string}`;
                                                                            principalAmount: bigint;
                                                                            startTime: bigint | bigint & Date;
                                                                            duration: bigint;
                                                                            tranche: readonly {
                                                                                loanId: bigint;
                                                                                floor: bigint;
                                                                                principalAmount: bigint;
                                                                                lender: `0x${string}`;
                                                                                accruedInterest: bigint;
                                                                                startTime: bigint;
                                                                                aprBps: bigint;
                                                                            }[];
                                                                            protocolFee: bigint;
                                                                            contractStartTime: bigint | Date;
                                                                        };
                                                                        value: boolean;
                                                                    }>);
                                                                } | {
                                                                    txHash: `0x${string}`;
                                                                    waitTxInBlock: (() => Promise<{
                                                                        loan: {
                                                                            loanId: bigint;
                                                                            contractAddress: `0x${string}`;
                                                                            borrower: `0x${string}`;
                                                                            nftCollateralTokenId: bigint;
                                                                            nftCollateralAddress: `0x${string}`;
                                                                            principalAddress: `0x${string}`;
                                                                            principalAmount: bigint;
                                                                            startTime: bigint | bigint & Date;
                                                                            duration: bigint;
                                                                            source: readonly {
                                                                                loanId: bigint;
                                                                                lender: `0x${string}`;
                                                                                principalAmount: bigint;
                                                                                accruedInterest: bigint;
                                                                                startTime: bigint;
                                                                                aprBps: bigint;
                                                                            }[];
                                                                        };
                                                                        value: boolean;
                                                                    }>);
                                                                }>
                                                              +
                                                            • Defined in src/gondi.ts:720
                                                              • @@ -755,7 +755,7 @@
                                                                Optional Returns Promise<{
                                                                    txHash: `0x${string}`;
                                                                    waitTxInBlock: (() => Promise<{
                                                                        delegate: `0x${string}`;
                                                                        collection: `0x${string}`;
                                                                        tokenId: bigint;
                                                                    }>);
                                                                }>
                                                              +
                                                            • Defined in src/gondi.ts:743
                                                              • @@ -777,7 +777,7 @@
                                                                emitReturns Promise<{
                                                                    txHash: `0x${string}`;
                                                                    waitTxInBlock: (() => Promise<{
                                                                        results: ({
                                                                            loanId: bigint;
                                                                            offerId: bigint;
                                                                            loan: {
                                                                                borrower: `0x${string}`;
                                                                                nftCollateralTokenId: bigint;
                                                                                nftCollateralAddress: `0x${string}`;
                                                                                principalAddress: `0x${string}`;
                                                                                principalAmount: bigint;
                                                                                startTime: bigint;
                                                                                duration: bigint;
                                                                                source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                            };
                                                                            lender: `0x${string}`;
                                                                            borrower: `0x${string}`;
                                                                            fee: bigint;
                                                                        } | {
                                                                            delegate: `0x${string}`;
                                                                            collection: `0x${string}`;
                                                                            tokenId: bigint;
                                                                        })[];
                                                                        loan: {
                                                                            contractAddress: `0x${string}`;
                                                                            borrower: `0x${string}`;
                                                                            nftCollateralTokenId: bigint;
                                                                            nftCollateralAddress: `0x${string}`;
                                                                            principalAddress: `0x${string}`;
                                                                            principalAmount: bigint;
                                                                            startTime: bigint;
                                                                            duration: bigint;
                                                                            source: readonly {
                                                                                loanId: bigint;
                                                                                lender: `0x${string}`;
                                                                                principalAmount: bigint;
                                                                                accruedInterest: bigint;
                                                                                startTime: bigint;
                                                                                aprBps: bigint;
                                                                            }[];
                                                                            id: string;
                                                                        };
                                                                        loanId: bigint;
                                                                    }>);
                                                                } | {
                                                                    txHash: `0x${string}`;
                                                                    waitTxInBlock: (() => Promise<{
                                                                        results: ({
                                                                            loanId: bigint;
                                                                            offerId: readonly bigint[];
                                                                            loan: {
                                                                                borrower: `0x${string}`;
                                                                                nftCollateralTokenId: bigint;
                                                                                nftCollateralAddress: `0x${string}`;
                                                                                principalAddress: `0x${string}`;
                                                                                principalAmount: bigint;
                                                                                startTime: bigint;
                                                                                duration: bigint;
                                                                                tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                                protocolFee: bigint;
                                                                            };
                                                                            fee: bigint;
                                                                        } | {
                                                                            delegate: `0x${string}`;
                                                                            collection: `0x${string}`;
                                                                            tokenId: bigint;
                                                                        })[];
                                                                        loan: {
                                                                            contractAddress: `0x${string}`;
                                                                            borrower: `0x${string}`;
                                                                            nftCollateralTokenId: bigint;
                                                                            nftCollateralAddress: `0x${string}`;
                                                                            principalAddress: `0x${string}`;
                                                                            principalAmount: bigint;
                                                                            startTime: bigint;
                                                                            duration: bigint;
                                                                            tranche: readonly {
                                                                                loanId: bigint;
                                                                                floor: bigint;
                                                                                principalAmount: bigint;
                                                                                lender: `0x${string}`;
                                                                                accruedInterest: bigint;
                                                                                startTime: bigint;
                                                                                aprBps: bigint;
                                                                            }[];
                                                                            protocolFee: bigint;
                                                                            id: string;
                                                                        };
                                                                        loanId: bigint;
                                                                    }>);
                                                                }>
                                                              +
                                                            • Defined in src/gondi.ts:761
                                                              • @@ -795,7 +795,7 @@
                                                                loanloanId: bigint

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loanId: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:772
                                                              • @@ -817,7 +817,7 @@
                                                                bidauction: Auction

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      auctionContract: `0x${string}`;
                                                                      tokenId: bigint;
                                                                      newBidder: `0x${string}`;
                                                                      bid: bigint;
                                                                      loanAddress: `0x${string}`;
                                                                      loanId: bigint;
                                                                  }>);
                                                              } | {
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      collection: `0x${string}`;
                                                                      tokenId: bigint;
                                                                      newBidder: `0x${string}`;
                                                                      bid: bigint;
                                                                      loanAddress: `0x${string}`;
                                                                      loanId: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:778
                                                              • @@ -835,7 +835,7 @@
                                                                loanauction: Auction

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loanContract: `0x${string}`;
                                                                      loanId: bigint;
                                                                      auctionContract: `0x${string}`;
                                                                      tokenId: bigint;
                                                                      asset: `0x${string}`;
                                                                      proceeds: bigint;
                                                                      settler: `0x${string}`;
                                                                      triggerFee: bigint;
                                                                  }>);
                                                              } | {
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loanContract: `0x${string}`;
                                                                      loanId: bigint;
                                                                      auctionContract: `0x${string}`;
                                                                      tokenId: bigint;
                                                                      asset: `0x${string}`;
                                                                      highestBid: bigint;
                                                                      settler: `0x${string}`;
                                                                      triggerFee: bigint;
                                                                  }>);
                                                              } | {
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loanContract: `0x${string}`;
                                                                      loanId: bigint;
                                                                      collection: `0x${string}`;
                                                                      tokenId: bigint;
                                                                      asset: `0x${string}`;
                                                                      proceeds: bigint;
                                                                      settler: `0x${string}`;
                                                                      triggerFee: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:794
                                                              • @@ -853,7 +853,7 @@
                                                                loanauction: Auction

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      loanAddress: `0x${string}`;
                                                                      loanId: bigint;
                                                                      nftAddress: `0x${string}`;
                                                                      tokenId: bigint;
                                                                      largestTrancheIdx: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:800
                                                              • @@ -869,7 +869,7 @@
                                                                __namedParameters: auction: Auction

                                                              Returns Promise<number>

                                                              +
                                                            • Defined in src/gondi.ts:806
                                                              • @@ -890,7 +890,7 @@
                                                                tokenIdReturns Promise<`0x${string}`>
                                                              +
                                                            • Defined in src/gondi.ts:813
                                                              • @@ -911,7 +911,7 @@
                                                                tokenIdReturns Promise<bigint>
                                                              +
                                                            • Defined in src/gondi.ts:821
                                                              • @@ -931,7 +931,7 @@
                                                                standardOptional to?: `0x${string}`

                                                              Returns Promise<boolean>

                                                              +
                                                            • Defined in src/gondi.ts:826
                                                              • @@ -951,7 +951,7 @@
                                                                standardOptional to?: `0x${string}`

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      owner: `0x${string}`;
                                                                      operator: `0x${string}`;
                                                                      approved: boolean;
                                                                  } | {
                                                                      owner: `0x${string}`;
                                                                      operator: `0x${string}`;
                                                                      approved: boolean;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:839
                                                              • @@ -971,7 +971,7 @@
                                                                amountOptional to?: `0x${string}`

                                                              Returns Promise<boolean>

                                                              +
                                                            • Defined in src/gondi.ts:864
                                                              • @@ -991,7 +991,7 @@
                                                                Optional Optional to?: `0x${string}`

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      owner: `0x${string}`;
                                                                      spender: `0x${string}`;
                                                                      amount: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:877
                                                            • Returns Promise<{
                                                                  vaultId: bigint;
                                                                  receipts: ({
                                                                      vaultId: bigint;
                                                                      collection: `0x${string}`;
                                                                      tokenId: bigint;
                                                                  } | {
                                                                      vaultId: bigint;
                                                                      token: `0x${string}`;
                                                                      tokenId: bigint;
                                                                      amount: bigint;
                                                                  })[];
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:902
                                                              • @@ -1025,7 +1025,7 @@
                                                                nftsOptional userVaultAddress?: `0x${string}`

                                                              Returns Promise<{
                                                                  vaultId: bigint;
                                                                  receipts: ({
                                                                      vaultId: bigint;
                                                                      collection: `0x${string}`;
                                                                      tokenId: bigint;
                                                                  } | {
                                                                      vaultId: bigint;
                                                                      token: `0x${string}`;
                                                                      tokenId: bigint;
                                                                      amount: bigint;
                                                                  })[];
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:905
                                                              • @@ -1038,7 +1038,7 @@

                                                                Parameters

                                                                __namedParameters: {
                                                                    userVaultAddress?: `0x${string}`;
                                                                } & DepositERC721sArgs

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      vaultId: bigint;
                                                                      collection: `0x${string}`;
                                                                      tokenId: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:915
                                                              • @@ -1051,7 +1051,7 @@

                                                                Parameters

                                                                __namedParameters: {
                                                                    userVaultAddress?: `0x${string}`;
                                                                } & DepositERC1155sArgs

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      vaultId: bigint;
                                                                      token: `0x${string}`;
                                                                      tokenId: bigint;
                                                                      amount: bigint;
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:922
                                                              • @@ -1064,7 +1064,7 @@

                                                                Parameters

                                                                __namedParameters: {
                                                                    userVaultAddress?: `0x${string}`;
                                                                } & BurnAndWithdrawArgs

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<{
                                                                      events: {
                                                                          vaultId: bigint;
                                                                          collection: `0x${string}`;
                                                                          tokenId: bigint;
                                                                      }[];
                                                                      oldEvents: {
                                                                          vaultId: bigint;
                                                                          collection: `0x${string}`;
                                                                          tokenId: bigint;
                                                                      }[];
                                                                  }>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:929
                                                            • Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitMined: (() => Promise<TransactionReceipt>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:936
                                                            • Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitMined: (() => Promise<TransactionReceipt>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:951
                                                              • @@ -1110,14 +1110,14 @@
                                                                mslContractAddressprice: bigint

                                                              Returns Promise<{
                                                                  txHash: `0x${string}`;
                                                                  waitTxInBlock: (() => Promise<TransactionReceipt>);
                                                              }>

                                                              +
                                                            • Defined in src/gondi.ts:958
                                                            • Properties

                                                              contracts: Contracts
                                                              +
                                                            • Defined in src/gondi.ts:37
                                                            • wallet: {}
                                                              @@ -1125,12 +1125,12 @@
                                                              +
                                                            • Defined in src/gondi.ts:38
                                                            • account: Account
                                                              +
                                                            • Defined in src/gondi.ts:39
                                                            • bcClient: {}
                                                              @@ -1138,12 +1138,12 @@
                                                                +
                                                              • Defined in src/gondi.ts:40
                                                              • api: Api
                                                                +
                                                              • Defined in src/gondi.ts:41
                                                              • defaults: {
                                                                    Msl: `0x${string}`;
                                                                    UserVault: `0x${string}`;
                                                                }
                                                                @@ -1155,7 +1155,7 @@
                                                                Msl
                                                                UserVault: `0x${string}`
                                                                +
                                                              • Defined in src/gondi.ts:42
                                                              • @@ -23,7 +23,7 @@

                                                                Hierarchy

                                                                • AllV4
                                                                +
                                                              • Defined in src/contracts/AllV4.ts:11
                                                              • @@ -71,7 +71,7 @@
                                                                walletClientReturns AllV4
                                                                +
                                                              • Defined in src/contracts/AllV4.ts:48
                                                              • Methods

                                                                @@ -93,7 +93,7 @@
                                                                tokenIdbid: bigint

                                                                Returns Promise<{
                                                                    txHash: `0x${string}`;
                                                                    waitTxInBlock: (() => Promise<{
                                                                        auctionContract: `0x${string}`;
                                                                        tokenId: bigint;
                                                                        newBidder: `0x${string}`;
                                                                        bid: bigint;
                                                                        loanAddress: `0x${string}`;
                                                                        loanId: bigint;
                                                                    }>);
                                                                }>

                                                                +
                                                              • Defined in src/contracts/AllV4.ts:60
                                                              • +
                                                              • Defined in src/contracts/AllV4.ts:83
                                                                • @@ -109,7 +109,7 @@
                                                                +
                                                              • Defined in src/contracts/AllV4.ts:87
                                                                • @@ -125,7 +125,7 @@
                                                                  __namedParameters: loan: LoanV4

                                                                Returns Promise<{
                                                                    txHash: `0x${string}`;
                                                                    waitTxInBlock: (() => Promise<{
                                                                        loanContract: `0x${string}`;
                                                                        loanId: bigint;
                                                                        auctionContract: `0x${string}`;
                                                                        tokenId: bigint;
                                                                        asset: `0x${string}`;
                                                                        highestBid: bigint;
                                                                        settler: `0x${string}`;
                                                                        triggerFee: bigint;
                                                                    }>);
                                                                }>

                                                                +
                                                              • Defined in src/contracts/AllV4.ts:91
                                                              • +
                                                              • Defined in src/contracts/BaseContract.ts:93
                                                              • Properties

                                                                @@ -155,19 +155,19 @@
                                                                type
                                                                components: ({
                                                                    name: string;
                                                                    type: string;
                                                                    components?: undefined;
                                                                } | {
                                                                    name: string;
                                                                    type: string;
                                                                    components: {
                                                                        name: string;
                                                                        internalType: string;
                                                                        type: string;
                                                                    }[];
                                                                })[]
                                                                +
                                                              • Defined in src/contracts/AllV4.ts:12
                                                              • abi: readonly [{
                                                                    stateMutability: "nonpayable";
                                                                    type: "constructor";
                                                                    inputs: readonly [{
                                                                        name: "currencyManager";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "collectionManager";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "triggerFee";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "AuctionAlreadyInProgressError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [{
                                                                        name: "_contract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "AuctionNotExistsError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [{
                                                                        name: "_expiration";
                                                                        internalType: "uint96";
                                                                        type: "uint96";
                                                                    }];
                                                                    name: "AuctionNotOverError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [{
                                                                        name: "_expiration";
                                                                        internalType: "uint96";
                                                                        type: "uint96";
                                                                    }];
                                                                    name: "AuctionOverError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "CollectionNotWhitelistedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "CurrencyNotWhitelistedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [{
                                                                        name: "triggerFee";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "InvalidTriggerFee";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [{
                                                                        name: "_loan";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "LoanNotAcceptedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [{
                                                                        name: "_minBid";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "MinBidError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [{
                                                                        name: "_owner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "NFTNotOwnedError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "NoBidsError";
                                                                }, {
                                                                    type: "error";
                                                                    inputs: readonly [];
                                                                    name: "ZeroAddressError";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "loanContract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "loanId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "auctionContract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "asset";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "highestBid";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "settler";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "triggerFee";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "AuctionSettled";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "auctionContract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "newBidder";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "bid";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "loanAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "loanId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "BidPlaced";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "loan";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "LoanContractAdded";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "loan";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "LoanContractRemoved";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "loanAddress";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "loanId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "duration";
                                                                        internalType: "uint96";
                                                                        type: "uint96";
                                                                        indexed: false;
                                                                    }, {
                                                                        name: "asset";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "LoanLiquidationStarted";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "user";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }, {
                                                                        name: "newOwner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                        indexed: true;
                                                                    }];
                                                                    name: "OwnershipTransferred";
                                                                }, {
                                                                    type: "event";
                                                                    anonymous: false;
                                                                    inputs: readonly [{
                                                                        name: "triggerFee";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                        indexed: false;
                                                                    }];
                                                                    name: "TriggerFeeUpdated";
                                                                }, {
                                                                    stateMutability: "view";
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "MAX_TRIGGER_FEE";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                }, {
                                                                    stateMutability: "view";
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "MIN_INCREMENT_BPS";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                }, {
                                                                    stateMutability: "nonpayable";
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_loanContract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "addLoanContract";
                                                                    outputs: readonly [];
                                                                }, {
                                                                    stateMutability: "view";
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_contract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "getAuction";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "struct AuctionLoanLiquidator.Auction";
                                                                        type: "tuple";
                                                                        components: readonly [{
                                                                            name: "loanAddress";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "highestBid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "highestBidder";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "duration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }, {
                                                                            name: "asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "startTime";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }, {
                                                                            name: "originator";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "lastBidTime";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }];
                                                                    }];
                                                                }, {
                                                                    stateMutability: "view";
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "getTriggerFee";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                }, {
                                                                    stateMutability: "view";
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "getValidLoanContracts";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address[]";
                                                                        type: "address[]";
                                                                    }];
                                                                }, {
                                                                    stateMutability: "nonpayable";
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_loanId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_contract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_asset";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_duration";
                                                                        internalType: "uint96";
                                                                        type: "uint96";
                                                                    }, {
                                                                        name: "_originator";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "liquidateLoan";
                                                                    outputs: readonly [];
                                                                }, {
                                                                    stateMutability: "nonpayable";
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "onERC721Received";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "bytes4";
                                                                        type: "bytes4";
                                                                    }];
                                                                }, {
                                                                    stateMutability: "view";
                                                                    type: "function";
                                                                    inputs: readonly [];
                                                                    name: "owner";
                                                                    outputs: readonly [{
                                                                        name: "";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                }, {
                                                                    stateMutability: "nonpayable";
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_contract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_bid";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "placeBid";
                                                                    outputs: readonly [];
                                                                }, {
                                                                    stateMutability: "nonpayable";
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_loanContract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "removeLoanContract";
                                                                    outputs: readonly [];
                                                                }, {
                                                                    stateMutability: "nonpayable";
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "_contract";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }, {
                                                                        name: "_tokenId";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }, {
                                                                        name: "_loan";
                                                                        internalType: "bytes";
                                                                        type: "bytes";
                                                                    }];
                                                                    name: "settleAuction";
                                                                    outputs: readonly [];
                                                                }, {
                                                                    stateMutability: "nonpayable";
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "newOwner";
                                                                        internalType: "address";
                                                                        type: "address";
                                                                    }];
                                                                    name: "transferOwnership";
                                                                    outputs: readonly [];
                                                                }, {
                                                                    stateMutability: "nonpayable";
                                                                    type: "function";
                                                                    inputs: readonly [{
                                                                        name: "triggerFee";
                                                                        internalType: "uint256";
                                                                        type: "uint256";
                                                                    }];
                                                                    name: "updateTriggerFee";
                                                                    outputs: readonly [];
                                                                }]
                                                                +
                                                              • Defined in src/contracts/BaseContract.ts:22
                                                              • address: `0x${string}`
                                                                +
                                                              • Defined in src/contracts/BaseContract.ts:23
                                                              • bcClient: {}
                                                                @@ -176,7 +176,7 @@

                                                                Type declaration

                                                                  +
                                                                • Defined in src/contracts/BaseContract.ts:24
                                                                • wallet: {}
                                                                  @@ -185,13 +185,13 @@

                                                                  Type declaration

                                                                    +
                                                                  • Defined in src/contracts/BaseContract.ts:25
                                                                  • contract: GetContractReturnType<readonly [{
                                                                        stateMutability: "nonpayable";
                                                                        type: "constructor";
                                                                        inputs: readonly [{
                                                                            name: "currencyManager";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "collectionManager";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "AuctionAlreadyInProgressError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "AuctionNotExistsError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_expiration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }];
                                                                        name: "AuctionNotOverError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_expiration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }];
                                                                        name: "AuctionOverError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "CollectionNotWhitelistedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "CurrencyNotWhitelistedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "InvalidTriggerFee";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_loan";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "LoanNotAcceptedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_minBid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "MinBidError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_owner";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "NFTNotOwnedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "NoBidsError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "ZeroAddressError";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loanContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "auctionContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "highestBid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "settler";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "AuctionSettled";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "auctionContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "newBidder";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "bid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanAddress";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "BidPlaced";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loan";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "LoanContractAdded";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loan";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "LoanContractRemoved";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loanAddress";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "duration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "LoanLiquidationStarted";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "user";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: true;
                                                                        }, {
                                                                            name: "newOwner";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: true;
                                                                        }];
                                                                        name: "OwnershipTransferred";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "TriggerFeeUpdated";
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "MAX_TRIGGER_FEE";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "MIN_INCREMENT_BPS";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_loanContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "addLoanContract";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "getAuction";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "struct AuctionLoanLiquidator.Auction";
                                                                            type: "tuple";
                                                                            components: readonly [{
                                                                                name: "loanAddress";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "highestBid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "highestBidder";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "duration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }, {
                                                                                name: "asset";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "startTime";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }, {
                                                                                name: "originator";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "lastBidTime";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }];
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "getTriggerFee";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "getValidLoanContracts";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "address[]";
                                                                            type: "address[]";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_duration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }, {
                                                                            name: "_originator";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "liquidateLoan";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                        name: "onERC721Received";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "bytes4";
                                                                            type: "bytes4";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "owner";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_bid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "placeBid";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_loanContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "removeLoanContract";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_loan";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                        name: "settleAuction";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "newOwner";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "transferOwnership";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "updateTriggerFee";
                                                                        outputs: readonly [];
                                                                    }], {} | {}>
                                                                    +
                                                                  • Defined in src/contracts/BaseContract.ts:26
                                                                  • safeContractWrite: {
                                                                        transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                        addLoanContract: ((args, options?) => Promise<`0x${string}`>);
                                                                        liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                        onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                        placeBid: ((args, options?) => Promise<`0x${string}`>);
                                                                        removeLoanContract: ((args, options?) => Promise<`0x${string}`>);
                                                                        settleAuction: ((args, options?) => Promise<`0x${string}`>);
                                                                        updateTriggerFee: ((args, options?) => Promise<`0x${string}`>);
                                                                    }
                                                                    @@ -344,7 +344,7 @@
                                                                    Optional Returns Promise<`0x${string}`>
                                                                    +
                                                                  • Defined in src/contracts/BaseContract.ts:28
                                                                  • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                        stateMutability: "nonpayable";
                                                                        type: "constructor";
                                                                        inputs: readonly [{
                                                                            name: "currencyManager";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "collectionManager";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "AuctionAlreadyInProgressError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "AuctionNotExistsError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_expiration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }];
                                                                        name: "AuctionNotOverError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_expiration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }];
                                                                        name: "AuctionOverError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "CollectionNotWhitelistedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "CurrencyNotWhitelistedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "InvalidTriggerFee";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_loan";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "LoanNotAcceptedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_minBid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "MinBidError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_owner";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "NFTNotOwnedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "NoBidsError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "ZeroAddressError";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loanContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "auctionContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "highestBid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "settler";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "AuctionSettled";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "auctionContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "newBidder";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "bid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanAddress";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "BidPlaced";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loan";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "LoanContractAdded";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loan";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "LoanContractRemoved";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loanAddress";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "duration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "LoanLiquidationStarted";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "user";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: true;
                                                                        }, {
                                                                            name: "newOwner";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: true;
                                                                        }];
                                                                        name: "OwnershipTransferred";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "TriggerFeeUpdated";
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "MAX_TRIGGER_FEE";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "MIN_INCREMENT_BPS";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_loanContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "addLoanContract";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "getAuction";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "struct AuctionLoanLiquidator.Auction";
                                                                            type: "tuple";
                                                                            components: readonly [{
                                                                                name: "loanAddress";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "highestBid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "highestBidder";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "duration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }, {
                                                                                name: "asset";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "startTime";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }, {
                                                                                name: "originator";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "lastBidTime";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }];
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "getTriggerFee";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "getValidLoanContracts";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "address[]";
                                                                            type: "address[]";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_duration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }, {
                                                                            name: "_originator";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "liquidateLoan";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                        name: "onERC721Received";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "bytes4";
                                                                            type: "bytes4";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "owner";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_bid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "placeBid";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_loanContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "removeLoanContract";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_loan";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                        name: "settleAuction";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "newOwner";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "transferOwnership";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "updateTriggerFee";
                                                                        outputs: readonly [];
                                                                    }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated")[]
                                                                        ? TFunctionName[number]
                                                                        : TFunctionName>)
                                                                    @@ -370,7 +370,7 @@
                                                                    logs: Returns ParseEventLogsReturnType<readonly [{
                                                                        stateMutability: "nonpayable";
                                                                        type: "constructor";
                                                                        inputs: readonly [{
                                                                            name: "currencyManager";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "collectionManager";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "AuctionAlreadyInProgressError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "AuctionNotExistsError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_expiration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }];
                                                                        name: "AuctionNotOverError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_expiration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }];
                                                                        name: "AuctionOverError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "CollectionNotWhitelistedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "CurrencyNotWhitelistedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "InvalidTriggerFee";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_loan";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "LoanNotAcceptedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_minBid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "MinBidError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [{
                                                                            name: "_owner";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "NFTNotOwnedError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "NoBidsError";
                                                                    }, {
                                                                        type: "error";
                                                                        inputs: readonly [];
                                                                        name: "ZeroAddressError";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loanContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "auctionContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "highestBid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "settler";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "AuctionSettled";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "auctionContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "newBidder";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "bid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanAddress";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "BidPlaced";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loan";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "LoanContractAdded";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loan";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "LoanContractRemoved";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "loanAddress";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "duration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                            indexed: false;
                                                                        }, {
                                                                            name: "asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "LoanLiquidationStarted";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "user";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: true;
                                                                        }, {
                                                                            name: "newOwner";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                            indexed: true;
                                                                        }];
                                                                        name: "OwnershipTransferred";
                                                                    }, {
                                                                        type: "event";
                                                                        anonymous: false;
                                                                        inputs: readonly [{
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                            indexed: false;
                                                                        }];
                                                                        name: "TriggerFeeUpdated";
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "MAX_TRIGGER_FEE";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "MIN_INCREMENT_BPS";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_loanContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "addLoanContract";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "getAuction";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "struct AuctionLoanLiquidator.Auction";
                                                                            type: "tuple";
                                                                            components: readonly [{
                                                                                name: "loanAddress";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "highestBid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "highestBidder";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "duration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }, {
                                                                                name: "asset";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "startTime";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }, {
                                                                                name: "originator";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "lastBidTime";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }];
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "getTriggerFee";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "getValidLoanContracts";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "address[]";
                                                                            type: "address[]";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_loanId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_asset";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_duration";
                                                                            internalType: "uint96";
                                                                            type: "uint96";
                                                                        }, {
                                                                            name: "_originator";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "liquidateLoan";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                        name: "onERC721Received";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "bytes4";
                                                                            type: "bytes4";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "view";
                                                                        type: "function";
                                                                        inputs: readonly [];
                                                                        name: "owner";
                                                                        outputs: readonly [{
                                                                            name: "";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_bid";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "placeBid";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_loanContract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "removeLoanContract";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "_contract";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }, {
                                                                            name: "_tokenId";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }, {
                                                                            name: "_loan";
                                                                            internalType: "bytes";
                                                                            type: "bytes";
                                                                        }];
                                                                        name: "settleAuction";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "newOwner";
                                                                            internalType: "address";
                                                                            type: "address";
                                                                        }];
                                                                        name: "transferOwnership";
                                                                        outputs: readonly [];
                                                                    }, {
                                                                        stateMutability: "nonpayable";
                                                                        type: "function";
                                                                        inputs: readonly [{
                                                                            name: "triggerFee";
                                                                            internalType: "uint256";
                                                                            type: "uint256";
                                                                        }];
                                                                        name: "updateTriggerFee";
                                                                        outputs: readonly [];
                                                                    }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated")[]
                                                                        ? TFunctionName[number]
                                                                        : TFunctionName>
                                                                    +
                                                                  • Defined in src/contracts/BaseContract.ts:35
                                                                  • @@ -23,7 +23,7 @@

                                                                    Hierarchy

                                                                    • AllV5
                                                                    +
                                                                  • Defined in src/contracts/AllV5.ts:11
                                                                  • @@ -70,7 +70,7 @@
                                                                    walletClientReturns AllV5
                                                                    +
                                                                  • Defined in src/contracts/AllV5.ts:12
                                                                  • Methods

                                                                    @@ -94,7 +94,7 @@
                                                                    bidauction: Auction

                                                                    Returns Promise<{
                                                                        txHash: `0x${string}`;
                                                                        waitTxInBlock: (() => Promise<{
                                                                            collection: `0x${string}`;
                                                                            tokenId: bigint;
                                                                            newBidder: `0x${string}`;
                                                                            bid: bigint;
                                                                            loanAddress: `0x${string}`;
                                                                            loanId: bigint;
                                                                        }>);
                                                                    }>

                                                                    +
                                                                  • Defined in src/contracts/AllV5.ts:24
                                                                  • +
                                                                  • Defined in src/contracts/AllV5.ts:54
                                                                    • @@ -110,7 +110,7 @@
                                                                    +
                                                                  • Defined in src/contracts/AllV5.ts:58
                                                                    • @@ -128,7 +128,7 @@
                                                                      auctionloan: LoanV5

                                                                    Returns Promise<{
                                                                        txHash: `0x${string}`;
                                                                        waitTxInBlock: (() => Promise<{
                                                                            loanContract: `0x${string}`;
                                                                            loanId: bigint;
                                                                            auctionContract: `0x${string}`;
                                                                            tokenId: bigint;
                                                                            asset: `0x${string}`;
                                                                            proceeds: bigint;
                                                                            settler: `0x${string}`;
                                                                            triggerFee: bigint;
                                                                        }>);
                                                                    }>

                                                                    +
                                                                  • Defined in src/contracts/AllV5.ts:62
                                                                  • +
                                                                  • Defined in src/contracts/BaseContract.ts:93
                                                                  • Properties

                                                                    @@ -150,13 +150,13 @@
                                                                    +
                                                                  • Defined in src/contracts/BaseContract.ts:22
                                                                  • address: `0x${string}`
                                                                    +
                                                                  • Defined in src/contracts/BaseContract.ts:23
                                                                  • bcClient: {}
                                                                    @@ -165,7 +165,7 @@

                                                                    Type declaration

                                                                      +
                                                                    • Defined in src/contracts/BaseContract.ts:24
                                                                    • wallet: {}
                                                                      @@ -174,13 +174,13 @@

                                                                      Type declaration

                                                                        +
                                                                      • Defined in src/contracts/BaseContract.ts:25
                                                                      • contract: GetContractReturnType<readonly [{
                                                                            stateMutability: "nonpayable";
                                                                            type: "constructor";
                                                                            inputs: readonly [{
                                                                                name: "liquidationDistributor";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "currencyManager";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "collectionManager";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "AddressZeroError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "AuctionAlreadyInProgressError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_expiration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }];
                                                                            name: "AuctionNotOverError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_expiration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }];
                                                                            name: "AuctionOverError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "CollectionNotWhitelistedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "CouldNotModifyValidLoansError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "CurrencyNotWhitelistedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "InvalidHashAuctionError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "InvalidTriggerFee";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_loan";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "LoanNotAcceptedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_minBid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "MinBidError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_owner";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "NFTNotOwnedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "NoBidsError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "ZeroAddressError";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "loanContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "auctionContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "asset";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "proceeds";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "settler";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "AuctionSettled";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "collection";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "newBidder";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "bid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "loanAddress";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "BidPlaced";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "liquidationDistributor";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LiquidationDistributorUpdated";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "loan";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LoanContractAdded";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "loan";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LoanContractRemoved";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "collection";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "auction";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LoanLiquidationStarted";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "user";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: true;
                                                                            }, {
                                                                                name: "newOwner";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: true;
                                                                            }];
                                                                            name: "OwnershipTransferred";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "TriggerFeeUpdated";
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "MAX_TRIGGER_FEE";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "MIN_INCREMENT_BPS";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_loanContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "addLoanContract";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_contract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "getAuctionHash";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "bytes32";
                                                                                type: "bytes32";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "getLiquidationDistributor";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "getTriggerFee";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "getValidLoanContracts";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address[]";
                                                                                type: "address[]";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "_contract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "_asset";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_duration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }, {
                                                                                name: "_originator";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "liquidateLoan";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "bytes";
                                                                                type: "bytes";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "";
                                                                                internalType: "bytes";
                                                                                type: "bytes";
                                                                            }];
                                                                            name: "onERC721Received";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "bytes4";
                                                                                type: "bytes4";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "owner";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_contract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "_auction";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                            }, {
                                                                                name: "_bid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "placeBid";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_loanContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "removeLoanContract";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_auction";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                            }, {
                                                                                name: "_loan";
                                                                                internalType: "struct IMultiSourceLoan.Loan";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "borrower";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "nftCollateralTokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "nftCollateralAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "principalAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "principalAmount";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "source";
                                                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                                                    type: "tuple[]";
                                                                                    components: readonly [{
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "lender";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAmount";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "accruedInterest";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "aprBps";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }];
                                                                                }];
                                                                            }];
                                                                            name: "settleAuction";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "newOwner";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "transferOwnership";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "__liquidationDistributor";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "updateLiquidationDistributor";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "updateTriggerFee";
                                                                            outputs: readonly [];
                                                                        }], {} | {}>
                                                                        +
                                                                      • Defined in src/contracts/BaseContract.ts:26
                                                                      • safeContractWrite: {
                                                                            transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                            addLoanContract: ((args, options?) => Promise<`0x${string}`>);
                                                                            liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                            onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                            placeBid: ((args, options?) => Promise<`0x${string}`>);
                                                                            removeLoanContract: ((args, options?) => Promise<`0x${string}`>);
                                                                            settleAuction: ((args, options?) => Promise<`0x${string}`>);
                                                                            updateTriggerFee: ((args, options?) => Promise<`0x${string}`>);
                                                                            updateLiquidationDistributor: ((args, options?) => Promise<`0x${string}`>);
                                                                        }
                                                                        @@ -351,7 +351,7 @@
                                                                        Optional Returns Promise<`0x${string}`>
                                                                        +
                                                                      • Defined in src/contracts/BaseContract.ts:28
                                                                      • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                            stateMutability: "nonpayable";
                                                                            type: "constructor";
                                                                            inputs: readonly [{
                                                                                name: "liquidationDistributor";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "currencyManager";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "collectionManager";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "AddressZeroError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "AuctionAlreadyInProgressError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_expiration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }];
                                                                            name: "AuctionNotOverError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_expiration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }];
                                                                            name: "AuctionOverError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "CollectionNotWhitelistedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "CouldNotModifyValidLoansError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "CurrencyNotWhitelistedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "InvalidHashAuctionError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "InvalidTriggerFee";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_loan";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "LoanNotAcceptedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_minBid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "MinBidError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_owner";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "NFTNotOwnedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "NoBidsError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "ZeroAddressError";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "loanContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "auctionContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "asset";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "proceeds";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "settler";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "AuctionSettled";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "collection";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "newBidder";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "bid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "loanAddress";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "BidPlaced";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "liquidationDistributor";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LiquidationDistributorUpdated";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "loan";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LoanContractAdded";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "loan";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LoanContractRemoved";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "collection";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "auction";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LoanLiquidationStarted";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "user";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: true;
                                                                            }, {
                                                                                name: "newOwner";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: true;
                                                                            }];
                                                                            name: "OwnershipTransferred";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "TriggerFeeUpdated";
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "MAX_TRIGGER_FEE";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "MIN_INCREMENT_BPS";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_loanContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "addLoanContract";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_contract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "getAuctionHash";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "bytes32";
                                                                                type: "bytes32";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "getLiquidationDistributor";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "getTriggerFee";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "getValidLoanContracts";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address[]";
                                                                                type: "address[]";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "_contract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "_asset";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_duration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }, {
                                                                                name: "_originator";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "liquidateLoan";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "bytes";
                                                                                type: "bytes";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "";
                                                                                internalType: "bytes";
                                                                                type: "bytes";
                                                                            }];
                                                                            name: "onERC721Received";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "bytes4";
                                                                                type: "bytes4";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "owner";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_contract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "_auction";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                            }, {
                                                                                name: "_bid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "placeBid";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_loanContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "removeLoanContract";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_auction";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                            }, {
                                                                                name: "_loan";
                                                                                internalType: "struct IMultiSourceLoan.Loan";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "borrower";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "nftCollateralTokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "nftCollateralAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "principalAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "principalAmount";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "source";
                                                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                                                    type: "tuple[]";
                                                                                    components: readonly [{
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "lender";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAmount";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "accruedInterest";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "aprBps";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }];
                                                                                }];
                                                                            }];
                                                                            name: "settleAuction";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "newOwner";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "transferOwnership";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "__liquidationDistributor";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "updateLiquidationDistributor";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "updateTriggerFee";
                                                                            outputs: readonly [];
                                                                        }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated")[]
                                                                            ? TFunctionName[number]
                                                                            : TFunctionName>)
                                                                        @@ -377,7 +377,7 @@
                                                                        logs: Returns ParseEventLogsReturnType<readonly [{
                                                                            stateMutability: "nonpayable";
                                                                            type: "constructor";
                                                                            inputs: readonly [{
                                                                                name: "liquidationDistributor";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "currencyManager";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "collectionManager";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "AddressZeroError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "AuctionAlreadyInProgressError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_expiration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }];
                                                                            name: "AuctionNotOverError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_expiration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }];
                                                                            name: "AuctionOverError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "CollectionNotWhitelistedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "CouldNotModifyValidLoansError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "CurrencyNotWhitelistedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "InvalidHashAuctionError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "InvalidTriggerFee";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_loan";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "LoanNotAcceptedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_minBid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "MinBidError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [{
                                                                                name: "_owner";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "NFTNotOwnedError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "NoBidsError";
                                                                        }, {
                                                                            type: "error";
                                                                            inputs: readonly [];
                                                                            name: "ZeroAddressError";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "loanContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "auctionContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "asset";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "proceeds";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "settler";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "AuctionSettled";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "collection";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "newBidder";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "bid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "loanAddress";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "BidPlaced";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "liquidationDistributor";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LiquidationDistributorUpdated";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "loan";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LoanContractAdded";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "loan";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LoanContractRemoved";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "collection";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }, {
                                                                                name: "auction";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                indexed: false;
                                                                            }];
                                                                            name: "LoanLiquidationStarted";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "user";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: true;
                                                                            }, {
                                                                                name: "newOwner";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                                indexed: true;
                                                                            }];
                                                                            name: "OwnershipTransferred";
                                                                        }, {
                                                                            type: "event";
                                                                            anonymous: false;
                                                                            inputs: readonly [{
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                                indexed: false;
                                                                            }];
                                                                            name: "TriggerFeeUpdated";
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "MAX_TRIGGER_FEE";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "MIN_INCREMENT_BPS";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_loanContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "addLoanContract";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_contract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "getAuctionHash";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "bytes32";
                                                                                type: "bytes32";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "getLiquidationDistributor";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "getTriggerFee";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "getValidLoanContracts";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address[]";
                                                                                type: "address[]";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_loanId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "_contract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "_asset";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_duration";
                                                                                internalType: "uint96";
                                                                                type: "uint96";
                                                                            }, {
                                                                                name: "_originator";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "liquidateLoan";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "bytes";
                                                                                type: "bytes";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "";
                                                                                internalType: "bytes";
                                                                                type: "bytes";
                                                                            }];
                                                                            name: "onERC721Received";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "bytes4";
                                                                                type: "bytes4";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "view";
                                                                            type: "function";
                                                                            inputs: readonly [];
                                                                            name: "owner";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_contract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }, {
                                                                                name: "_tokenId";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }, {
                                                                                name: "_auction";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                            }, {
                                                                                name: "_bid";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "placeBid";
                                                                            outputs: readonly [{
                                                                                name: "";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                            }];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_loanContract";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "removeLoanContract";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "_auction";
                                                                                internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "highestBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "lastBidTime";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                            }, {
                                                                                name: "_loan";
                                                                                internalType: "struct IMultiSourceLoan.Loan";
                                                                                type: "tuple";
                                                                                components: readonly [{
                                                                                    name: "borrower";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "nftCollateralTokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "nftCollateralAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "principalAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "principalAmount";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "startTime";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "duration";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "source";
                                                                                    internalType: "struct IMultiSourceLoan.Source[]";
                                                                                    type: "tuple[]";
                                                                                    components: readonly [{
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "lender";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAmount";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "accruedInterest";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "aprBps";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }];
                                                                                }];
                                                                            }];
                                                                            name: "settleAuction";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "newOwner";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "transferOwnership";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "__liquidationDistributor";
                                                                                internalType: "address";
                                                                                type: "address";
                                                                            }];
                                                                            name: "updateLiquidationDistributor";
                                                                            outputs: readonly [];
                                                                        }, {
                                                                            stateMutability: "nonpayable";
                                                                            type: "function";
                                                                            inputs: readonly [{
                                                                                name: "triggerFee";
                                                                                internalType: "uint256";
                                                                                type: "uint256";
                                                                            }];
                                                                            name: "updateTriggerFee";
                                                                            outputs: readonly [];
                                                                        }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated")[]
                                                                            ? TFunctionName[number]
                                                                            : TFunctionName>
                                                                        +
                                                                      • Defined in src/contracts/BaseContract.ts:35
                                                                      • @@ -23,7 +23,7 @@

                                                                        Hierarchy

                                                                        • AllV6
                                                                        +
                                                                      • Defined in src/contracts/AllV6.ts:11
                                                                      • @@ -70,7 +70,7 @@
                                                                        walletClientReturns AllV6
                                                                        +
                                                                      • Defined in src/contracts/AllV6.ts:12
                                                                      • Methods

                                                                        @@ -94,7 +94,7 @@
                                                                        bidauction: Auction

                                                                        Returns Promise<{
                                                                            txHash: `0x${string}`;
                                                                            waitTxInBlock: (() => Promise<{
                                                                                collection: `0x${string}`;
                                                                                tokenId: bigint;
                                                                                newBidder: `0x${string}`;
                                                                                bid: bigint;
                                                                                loanAddress: `0x${string}`;
                                                                                loanId: bigint;
                                                                            }>);
                                                                        }>

                                                                        +
                                                                      • Defined in src/contracts/AllV6.ts:24
                                                                        • @@ -110,7 +110,7 @@
                                                                          __namedParameters: auction: Auction

                                                                        Returns Promise<number>

                                                                        +
                                                                      • Defined in src/contracts/AllV6.ts:54
                                                                        • @@ -128,7 +128,7 @@
                                                                          auctionloan: LoanV6

                                                                        Returns Promise<{
                                                                            txHash: `0x${string}`;
                                                                            waitTxInBlock: (() => Promise<{
                                                                                loanAddress: `0x${string}`;
                                                                                loanId: bigint;
                                                                                nftAddress: `0x${string}`;
                                                                                tokenId: bigint;
                                                                                largestTrancheIdx: bigint;
                                                                            }>);
                                                                        }>

                                                                        +
                                                                      • Defined in src/contracts/AllV6.ts:63
                                                                        • @@ -146,7 +146,7 @@
                                                                          auctionloan: LoanV6

                                                                        Returns Promise<{
                                                                            txHash: `0x${string}`;
                                                                            waitTxInBlock: (() => Promise<{
                                                                                loanContract: `0x${string}`;
                                                                                loanId: bigint;
                                                                                collection: `0x${string}`;
                                                                                tokenId: bigint;
                                                                                asset: `0x${string}`;
                                                                                proceeds: bigint;
                                                                                settler: `0x${string}`;
                                                                                triggerFee: bigint;
                                                                            }>);
                                                                        }>

                                                                        +
                                                                      • Defined in src/contracts/AllV6.ts:84
                                                                      • +
                                                                      • Defined in src/contracts/BaseContract.ts:93
                                                                      • Properties

                                                                        @@ -168,13 +168,13 @@
                                                                        +
                                                                      • Defined in src/contracts/BaseContract.ts:22
                                                                      • address: `0x${string}`
                                                                        +
                                                                      • Defined in src/contracts/BaseContract.ts:23
                                                                      • bcClient: {}
                                                                        @@ -183,7 +183,7 @@

                                                                        Type declaration

                                                                          +
                                                                        • Defined in src/contracts/BaseContract.ts:24
                                                                        • wallet: {}
                                                                          @@ -192,13 +192,13 @@

                                                                          Type declaration

                                                                            +
                                                                          • Defined in src/contracts/BaseContract.ts:25
                                                                          • contract: GetContractReturnType<readonly [{
                                                                                type: "constructor";
                                                                                inputs: readonly [{
                                                                                    name: "liquidationDistributor";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "currencyManager";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "collectionManager";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanManagerRegistry";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "maxExtension";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "timeForMainLenderToBuy";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "AddressZeroError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "AuctionAlreadyInProgressError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_expiration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                name: "AuctionNotOverError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_expiration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                name: "AuctionOverError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "CollectionNotWhitelistedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "CouldNotModifyValidLoansError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "CurrencyNotWhitelistedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "InvalidHashAuctionError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "InvalidInputError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "InvalidTriggerFee";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_loan";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "LoanNotAcceptedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_minBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "MinBidError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_owner";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "NFTNotOwnedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "NoBidsError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "NotMainLenderError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "timeLimit";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "OptionToBuyExpiredError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "timeLimit";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "OptionToBuyStilValidError";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loanContract";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "collection";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "proceeds";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "settler";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "AuctionSettled";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "largestTrancheIdx";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "AuctionSettledWithBuyout";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "collection";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "newBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "bid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "BidPlaced";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "liquidationDistributor";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LiquidationDistributorUpdated";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loan";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LoanContractAdded";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loan";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LoanContractRemoved";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "collection";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LoanLiquidationStarted";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "user";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: true;
                                                                                }, {
                                                                                    name: "newOwner";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: true;
                                                                                }];
                                                                                name: "OwnershipTransferred";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "timeForMainLenderToBuy";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "TimeForMainLenderToBuyUpdated";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "TriggerFeeUpdated";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "MAX_TRIGGER_FEE";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "MIN_INCREMENT_BPS";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_loanContract";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "addLoanContract";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "getAuctionHash";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "bytes32";
                                                                                    type: "bytes32";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getLiquidationDistributor";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getLoanManagerRegistry";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "contract ILoanManagerRegistry";
                                                                                    type: "address";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getMaxExtension";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getTimeForMainLenderToBuy";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getTriggerFee";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getValidLoanContracts";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address[]";
                                                                                    type: "address[]";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "_minBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "liquidateLoan";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "bytes";
                                                                                    type: "bytes";
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "";
                                                                                    internalType: "bytes";
                                                                                    type: "bytes";
                                                                                }];
                                                                                name: "onERC721Received";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "bytes4";
                                                                                    type: "bytes4";
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "owner";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }, {
                                                                                    name: "_bid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "placeBid";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_loanContract";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "removeLoanContract";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "__timeForMainLenderToBuy";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "setTimeForMainLenderToBuy";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }, {
                                                                                    name: "_loan";
                                                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "borrower";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "nftCollateralTokenId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "nftCollateralAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAmount";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "tranche";
                                                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                        type: "tuple[]";
                                                                                        components: readonly [{
                                                                                            name: "loanId";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "floor";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "principalAmount";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "lender";
                                                                                            internalType: "address";
                                                                                            type: "address";
                                                                                        }, {
                                                                                            name: "accruedInterest";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "startTime";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "aprBps";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }];
                                                                                    }, {
                                                                                        name: "protocolFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }];
                                                                                }];
                                                                                name: "settleAuction";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }, {
                                                                                    name: "_loan";
                                                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "borrower";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "nftCollateralTokenId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "nftCollateralAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAmount";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "tranche";
                                                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                        type: "tuple[]";
                                                                                        components: readonly [{
                                                                                            name: "loanId";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "floor";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "principalAmount";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "lender";
                                                                                            internalType: "address";
                                                                                            type: "address";
                                                                                        }, {
                                                                                            name: "accruedInterest";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "startTime";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "aprBps";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }];
                                                                                    }, {
                                                                                        name: "protocolFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }];
                                                                                }];
                                                                                name: "settleWithBuyout";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "newOwner";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "transferOwnership";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "__liquidationDistributor";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "updateLiquidationDistributor";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "updateTriggerFee";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }], {} | {}>
                                                                            +
                                                                          • Defined in src/contracts/BaseContract.ts:26
                                                                          • safeContractWrite: {
                                                                                transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                                addLoanContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                                placeBid: ((args, options?) => Promise<`0x${string}`>);
                                                                                removeLoanContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                settleAuction: ((args, options?) => Promise<`0x${string}`>);
                                                                                updateTriggerFee: ((args, options?) => Promise<`0x${string}`>);
                                                                                updateLiquidationDistributor: ((args, options?) => Promise<`0x${string}`>);
                                                                                setTimeForMainLenderToBuy: ((args, options?) => Promise<`0x${string}`>);
                                                                                settleWithBuyout: ((args, options?) => Promise<`0x${string}`>);
                                                                            }
                                                                            @@ -405,7 +405,7 @@
                                                                            Optional Returns Promise<`0x${string}`>
                                                                            +
                                                                          • Defined in src/contracts/BaseContract.ts:28
                                                                          • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                                type: "constructor";
                                                                                inputs: readonly [{
                                                                                    name: "liquidationDistributor";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "currencyManager";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "collectionManager";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanManagerRegistry";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "maxExtension";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "timeForMainLenderToBuy";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "AddressZeroError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "AuctionAlreadyInProgressError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_expiration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                name: "AuctionNotOverError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_expiration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                name: "AuctionOverError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "CollectionNotWhitelistedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "CouldNotModifyValidLoansError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "CurrencyNotWhitelistedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "InvalidHashAuctionError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "InvalidInputError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "InvalidTriggerFee";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_loan";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "LoanNotAcceptedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_minBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "MinBidError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_owner";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "NFTNotOwnedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "NoBidsError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "NotMainLenderError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "timeLimit";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "OptionToBuyExpiredError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "timeLimit";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "OptionToBuyStilValidError";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loanContract";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "collection";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "proceeds";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "settler";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "AuctionSettled";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "largestTrancheIdx";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "AuctionSettledWithBuyout";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "collection";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "newBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "bid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "BidPlaced";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "liquidationDistributor";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LiquidationDistributorUpdated";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loan";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LoanContractAdded";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loan";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LoanContractRemoved";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "collection";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LoanLiquidationStarted";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "user";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: true;
                                                                                }, {
                                                                                    name: "newOwner";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: true;
                                                                                }];
                                                                                name: "OwnershipTransferred";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "timeForMainLenderToBuy";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "TimeForMainLenderToBuyUpdated";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "TriggerFeeUpdated";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "MAX_TRIGGER_FEE";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "MIN_INCREMENT_BPS";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_loanContract";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "addLoanContract";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "getAuctionHash";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "bytes32";
                                                                                    type: "bytes32";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getLiquidationDistributor";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getLoanManagerRegistry";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "contract ILoanManagerRegistry";
                                                                                    type: "address";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getMaxExtension";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getTimeForMainLenderToBuy";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getTriggerFee";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getValidLoanContracts";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address[]";
                                                                                    type: "address[]";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "_minBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "liquidateLoan";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "bytes";
                                                                                    type: "bytes";
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "";
                                                                                    internalType: "bytes";
                                                                                    type: "bytes";
                                                                                }];
                                                                                name: "onERC721Received";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "bytes4";
                                                                                    type: "bytes4";
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "owner";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }, {
                                                                                    name: "_bid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "placeBid";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_loanContract";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "removeLoanContract";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "__timeForMainLenderToBuy";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "setTimeForMainLenderToBuy";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }, {
                                                                                    name: "_loan";
                                                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "borrower";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "nftCollateralTokenId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "nftCollateralAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAmount";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "tranche";
                                                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                        type: "tuple[]";
                                                                                        components: readonly [{
                                                                                            name: "loanId";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "floor";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "principalAmount";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "lender";
                                                                                            internalType: "address";
                                                                                            type: "address";
                                                                                        }, {
                                                                                            name: "accruedInterest";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "startTime";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "aprBps";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }];
                                                                                    }, {
                                                                                        name: "protocolFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }];
                                                                                }];
                                                                                name: "settleAuction";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }, {
                                                                                    name: "_loan";
                                                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "borrower";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "nftCollateralTokenId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "nftCollateralAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAmount";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "tranche";
                                                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                        type: "tuple[]";
                                                                                        components: readonly [{
                                                                                            name: "loanId";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "floor";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "principalAmount";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "lender";
                                                                                            internalType: "address";
                                                                                            type: "address";
                                                                                        }, {
                                                                                            name: "accruedInterest";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "startTime";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "aprBps";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }];
                                                                                    }, {
                                                                                        name: "protocolFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }];
                                                                                }];
                                                                                name: "settleWithBuyout";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "newOwner";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "transferOwnership";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "__liquidationDistributor";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "updateLiquidationDistributor";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "updateTriggerFee";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated" | "AuctionSettledWithBuyout" | "TimeForMainLenderToBuyUpdated")[]
                                                                                ? TFunctionName[number]
                                                                                : TFunctionName>)
                                                                            @@ -431,7 +431,7 @@
                                                                            logs: Returns ParseEventLogsReturnType<readonly [{
                                                                                type: "constructor";
                                                                                inputs: readonly [{
                                                                                    name: "liquidationDistributor";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "currencyManager";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "collectionManager";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "loanManagerRegistry";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "maxExtension";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "timeForMainLenderToBuy";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "AddressZeroError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "AuctionAlreadyInProgressError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_expiration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                name: "AuctionNotOverError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_expiration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                name: "AuctionOverError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "CollectionNotWhitelistedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "CouldNotModifyValidLoansError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "CurrencyNotWhitelistedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "InvalidHashAuctionError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "InvalidInputError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "InvalidTriggerFee";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_loan";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "LoanNotAcceptedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_minBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "MinBidError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "_owner";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "NFTNotOwnedError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "NoBidsError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [];
                                                                                name: "NotMainLenderError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "timeLimit";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "OptionToBuyExpiredError";
                                                                            }, {
                                                                                type: "error";
                                                                                inputs: readonly [{
                                                                                    name: "timeLimit";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "OptionToBuyStilValidError";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loanContract";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "collection";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "proceeds";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "settler";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "AuctionSettled";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "largestTrancheIdx";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "AuctionSettledWithBuyout";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "collection";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "newBidder";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "bid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "BidPlaced";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "liquidationDistributor";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LiquidationDistributorUpdated";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loan";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LoanContractAdded";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "loan";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LoanContractRemoved";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "collection";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }, {
                                                                                    name: "auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "LoanLiquidationStarted";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "user";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: true;
                                                                                }, {
                                                                                    name: "newOwner";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                    indexed: true;
                                                                                }];
                                                                                name: "OwnershipTransferred";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "timeForMainLenderToBuy";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "TimeForMainLenderToBuyUpdated";
                                                                            }, {
                                                                                type: "event";
                                                                                anonymous: false;
                                                                                inputs: readonly [{
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                    indexed: false;
                                                                                }];
                                                                                name: "TriggerFeeUpdated";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "MAX_TRIGGER_FEE";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "MIN_INCREMENT_BPS";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_loanContract";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "addLoanContract";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "getAuctionHash";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "bytes32";
                                                                                    type: "bytes32";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getLiquidationDistributor";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getLoanManagerRegistry";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "contract ILoanManagerRegistry";
                                                                                    type: "address";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getMaxExtension";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getTimeForMainLenderToBuy";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getTriggerFee";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "getValidLoanContracts";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address[]";
                                                                                    type: "address[]";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_loanId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_asset";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_duration";
                                                                                    internalType: "uint96";
                                                                                    type: "uint96";
                                                                                }, {
                                                                                    name: "_minBid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_originator";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "liquidateLoan";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "bytes";
                                                                                    type: "bytes";
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "";
                                                                                    internalType: "bytes";
                                                                                    type: "bytes";
                                                                                }];
                                                                                name: "onERC721Received";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "bytes4";
                                                                                    type: "bytes4";
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [];
                                                                                name: "owner";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                stateMutability: "view";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }, {
                                                                                    name: "_bid";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "placeBid";
                                                                                outputs: readonly [{
                                                                                    name: "";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_loanContract";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "removeLoanContract";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "__timeForMainLenderToBuy";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "setTimeForMainLenderToBuy";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }, {
                                                                                    name: "_loan";
                                                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "borrower";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "nftCollateralTokenId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "nftCollateralAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAmount";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "tranche";
                                                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                        type: "tuple[]";
                                                                                        components: readonly [{
                                                                                            name: "loanId";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "floor";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "principalAmount";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "lender";
                                                                                            internalType: "address";
                                                                                            type: "address";
                                                                                        }, {
                                                                                            name: "accruedInterest";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "startTime";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "aprBps";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }];
                                                                                    }, {
                                                                                        name: "protocolFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }];
                                                                                }];
                                                                                name: "settleAuction";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "_nftAddress";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }, {
                                                                                    name: "_tokenId";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }, {
                                                                                    name: "_auction";
                                                                                    internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "loanAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "loanId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "triggerFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "minBid";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "highestBidder";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "asset";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }, {
                                                                                        name: "originator";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "lastBidTime";
                                                                                        internalType: "uint96";
                                                                                        type: "uint96";
                                                                                    }];
                                                                                }, {
                                                                                    name: "_loan";
                                                                                    internalType: "struct IMultiSourceLoan.Loan";
                                                                                    type: "tuple";
                                                                                    components: readonly [{
                                                                                        name: "borrower";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "nftCollateralTokenId";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "nftCollateralAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAddress";
                                                                                        internalType: "address";
                                                                                        type: "address";
                                                                                    }, {
                                                                                        name: "principalAmount";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "startTime";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "duration";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }, {
                                                                                        name: "tranche";
                                                                                        internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                        type: "tuple[]";
                                                                                        components: readonly [{
                                                                                            name: "loanId";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "floor";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "principalAmount";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "lender";
                                                                                            internalType: "address";
                                                                                            type: "address";
                                                                                        }, {
                                                                                            name: "accruedInterest";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "startTime";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }, {
                                                                                            name: "aprBps";
                                                                                            internalType: "uint256";
                                                                                            type: "uint256";
                                                                                        }];
                                                                                    }, {
                                                                                        name: "protocolFee";
                                                                                        internalType: "uint256";
                                                                                        type: "uint256";
                                                                                    }];
                                                                                }];
                                                                                name: "settleWithBuyout";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "newOwner";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "transferOwnership";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "__liquidationDistributor";
                                                                                    internalType: "address";
                                                                                    type: "address";
                                                                                }];
                                                                                name: "updateLiquidationDistributor";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }, {
                                                                                type: "function";
                                                                                inputs: readonly [{
                                                                                    name: "triggerFee";
                                                                                    internalType: "uint256";
                                                                                    type: "uint256";
                                                                                }];
                                                                                name: "updateTriggerFee";
                                                                                outputs: readonly [];
                                                                                stateMutability: "nonpayable";
                                                                            }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AuctionSettled" | "BidPlaced" | "LoanContractAdded" | "LoanContractRemoved" | "LoanLiquidationStarted" | "TriggerFeeUpdated" | "LiquidationDistributorUpdated" | "AuctionSettledWithBuyout" | "TimeForMainLenderToBuyUpdated")[]
                                                                                ? TFunctionName[number]
                                                                                : TFunctionName>
                                                                            +
                                                                          • Defined in src/contracts/BaseContract.ts:35
                                                                          • @@ -21,7 +21,7 @@

                                                                            Hierarchy

                                                                            • Api
                                                                            +
                                                                          • Defined in src/api/index.ts:34
                                                                          • @@ -78,7 +78,7 @@

                                                                            Parameters

                                                                            __namedParameters: Props

                                                                            Returns Api

                                                                            +
                                                                          • Defined in src/api/index.ts:55
                                                                          • Methods

                                                                            @@ -93,7 +93,7 @@

                                                                            Parameters

                                                                            offerInput: SingleNftSignedOfferInput

                                                                            Returns Promise<{
                                                                                aprBps: bigint;
                                                                                borrowerAddress: `0x${string}`;
                                                                                capacity: bigint;
                                                                                contractAddress: `0x${string}`;
                                                                                duration: bigint;
                                                                                expirationTime: bigint;
                                                                                fee: bigint;
                                                                                lenderAddress: `0x${string}`;
                                                                                maxSeniorRepayment?: InputMaybe<bigint>;
                                                                                maxTrancheFloor?: InputMaybe<bigint>;
                                                                                nftId: number;
                                                                                offerHash: `0x${string}`;
                                                                                offerId: bigint;
                                                                                offerValidators: OfferValidatorInput[];
                                                                                principalAddress: `0x${string}`;
                                                                                principalAmount: bigint;
                                                                                requiresLiquidation?: InputMaybe<boolean>;
                                                                                signature: `0x${string}`;
                                                                                signerAddress?: InputMaybe<`0x${string}`>;
                                                                                id: string;
                                                                                nftCollateralAddress: `0x${string}`;
                                                                                nftCollateralTokenId: bigint;
                                                                            }>

                                                                            +
                                                                          • Defined in src/api/index.ts:79
                                                                          • Returns Promise<{
                                                                                __typename?: "SellAndRepayOrder";
                                                                                id: string;
                                                                                status: string;
                                                                                signature: `0x${string}`;
                                                                                repaymentCalldata: `0x${string}`;
                                                                                cancelCalldata: `0x${string}`;
                                                                                marketPlaceAddress: `0x${string}`;
                                                                            } | {
                                                                                __typename?: "SignatureRequest";
                                                                                key: string;
                                                                                typedData: {
                                                                                    __typename?: "TypedData";
                                                                                    types: object;
                                                                                    primaryType: string;
                                                                                    domain: object;
                                                                                    message: object;
                                                                                };
                                                                            }>

                                                                            +
                                                                          • Defined in src/api/index.ts:95
                                                                          • Returns Promise<{
                                                                                aprBps: bigint;
                                                                                borrowerAddress: `0x${string}`;
                                                                                capacity: bigint;
                                                                                collectionId: number;
                                                                                contractAddress: `0x${string}`;
                                                                                duration: bigint;
                                                                                expirationTime: bigint;
                                                                                fee: bigint;
                                                                                lenderAddress: `0x${string}`;
                                                                                maxSeniorRepayment?: InputMaybe<bigint>;
                                                                                maxTrancheFloor?: InputMaybe<bigint>;
                                                                                offerHash: `0x${string}`;
                                                                                offerId: bigint;
                                                                                offerValidators: OfferValidatorInput[];
                                                                                principalAddress: `0x${string}`;
                                                                                principalAmount: bigint;
                                                                                requiresLiquidation?: InputMaybe<boolean>;
                                                                                signature: `0x${string}`;
                                                                                signerAddress?: InputMaybe<`0x${string}`>;
                                                                                id: string;
                                                                                nftCollateralAddress: `0x${string}`;
                                                                                nftCollateralTokenId: bigint;
                                                                            }>

                                                                            +
                                                                          • Defined in src/api/index.ts:100
                                                                          • Returns Promise<{
                                                                                id: string;
                                                                                loanId: string;
                                                                                duration: bigint;
                                                                                principalAmount: bigint;
                                                                                renegotiationId: bigint;
                                                                                requiresLiquidation?: InputMaybe<boolean>;
                                                                                aprBps: bigint;
                                                                                expirationTime: bigint;
                                                                                targetPrincipal?: InputMaybe<bigint[]>;
                                                                                strictImprovement?: InputMaybe<boolean>;
                                                                                trancheIndex?: InputMaybe<bigint[]>;
                                                                                lenderAddress: `0x${string}`;
                                                                                signerAddress?: InputMaybe<`0x${string}`>;
                                                                                offerHash: `0x${string}`;
                                                                                feeAmount: bigint;
                                                                                isAddNewTranche?: InputMaybe<boolean>;
                                                                                signature: `0x${string}`;
                                                                            }>

                                                                            +
                                                                          • Defined in src/api/index.ts:116
                                                                          • Returns Promise<{
                                                                                offers: ({
                                                                                    type: undefined | "CollectionOffer" | "SingleNFTOffer";
                                                                                    lender: undefined | null | `0x${string}`;
                                                                                    borrower: undefined | null | `0x${string}`;
                                                                                    signer: undefined | null | `0x${string}`;
                                                                                    offerValidators: {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[] | {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[];
                                                                                    nftCollateralAddress: `0x${string}`;
                                                                                    nftCollateralTokenId: bigint;
                                                                                    id: string;
                                                                                    offerId: bigint;
                                                                                    lenderAddress?: null | `0x${string}`;
                                                                                    borrowerAddress?: null | `0x${string}`;
                                                                                    signerAddress?: null | `0x${string}`;
                                                                                    contractAddress: `0x${string}`;
                                                                                    requiresLiquidation?: null | boolean;
                                                                                    principalAddress: `0x${string}`;
                                                                                    principalAmount: bigint;
                                                                                    aprBps: bigint;
                                                                                    fee: bigint;
                                                                                    capacity: bigint;
                                                                                    expirationTime: bigint;
                                                                                    duration: bigint;
                                                                                    status: string;
                                                                                    offerHash?: null | `0x${string}`;
                                                                                    signature?: null | `0x${string}`;
                                                                                    createdDate?: null | Date;
                                                                                    repayment: bigint;
                                                                                    hidden?: null | boolean;
                                                                                    maxSeniorRepayment: bigint;
                                                                                    collection: {
                                                                                        __typename?: "Collection";
                                                                                        id: string;
                                                                                        slug: string;
                                                                                        contractData: {
                                                                                            __typename?: "ContractData";
                                                                                            contractAddress: `0x${string}`;
                                                                                        };
                                                                                    };
                                                                                    currency: {
                                                                                        __typename?: "Currency";
                                                                                        symbol: string;
                                                                                        decimals: number;
                                                                                        address: `0x${string}`;
                                                                                    };
                                                                                    validators: {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[];
                                                                                } | {
                                                                                    type: undefined | "CollectionOffer" | "SingleNFTOffer";
                                                                                    lender: undefined | null | `0x${string}`;
                                                                                    borrower: undefined | null | `0x${string}`;
                                                                                    signer: undefined | null | `0x${string}`;
                                                                                    offerValidators: {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[] | {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[];
                                                                                    nftCollateralAddress: `0x${string}`;
                                                                                    nftCollateralTokenId: bigint;
                                                                                    id: string;
                                                                                    offerId: bigint;
                                                                                    lenderAddress?: null | `0x${string}`;
                                                                                    borrowerAddress?: null | `0x${string}`;
                                                                                    signerAddress?: null | `0x${string}`;
                                                                                    contractAddress: `0x${string}`;
                                                                                    requiresLiquidation?: null | boolean;
                                                                                    principalAddress: `0x${string}`;
                                                                                    principalAmount: bigint;
                                                                                    aprBps: bigint;
                                                                                    fee: bigint;
                                                                                    capacity: bigint;
                                                                                    expirationTime: bigint;
                                                                                    duration: bigint;
                                                                                    status: string;
                                                                                    offerHash?: null | `0x${string}`;
                                                                                    signature?: null | `0x${string}`;
                                                                                    createdDate?: null | Date;
                                                                                    repayment: bigint;
                                                                                    hidden?: null | boolean;
                                                                                    maxSeniorRepayment: bigint;
                                                                                    nft: {
                                                                                        __typename?: "NFT";
                                                                                        id: string;
                                                                                        tokenId: bigint;
                                                                                        collection?: null | {
                                                                                            __typename?: "Collection";
                                                                                            id: string;
                                                                                            slug: string;
                                                                                            contractData: {
                                                                                                __typename?: "ContractData";
                                                                                                contractAddress: `0x${string}`;
                                                                                            };
                                                                                        };
                                                                                    };
                                                                                    currency: {
                                                                                        __typename?: "Currency";
                                                                                        symbol: string;
                                                                                        decimals: number;
                                                                                        address: `0x${string}`;
                                                                                    };
                                                                                    validators: {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[];
                                                                                })[];
                                                                                hasNextPage: true;
                                                                                cursor: string;
                                                                            } | {
                                                                                offers: ({
                                                                                    type: undefined | "CollectionOffer" | "SingleNFTOffer";
                                                                                    lender: undefined | null | `0x${string}`;
                                                                                    borrower: undefined | null | `0x${string}`;
                                                                                    signer: undefined | null | `0x${string}`;
                                                                                    offerValidators: {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[] | {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[];
                                                                                    nftCollateralAddress: `0x${string}`;
                                                                                    nftCollateralTokenId: bigint;
                                                                                    id: string;
                                                                                    offerId: bigint;
                                                                                    lenderAddress?: null | `0x${string}`;
                                                                                    borrowerAddress?: null | `0x${string}`;
                                                                                    signerAddress?: null | `0x${string}`;
                                                                                    contractAddress: `0x${string}`;
                                                                                    requiresLiquidation?: null | boolean;
                                                                                    principalAddress: `0x${string}`;
                                                                                    principalAmount: bigint;
                                                                                    aprBps: bigint;
                                                                                    fee: bigint;
                                                                                    capacity: bigint;
                                                                                    expirationTime: bigint;
                                                                                    duration: bigint;
                                                                                    status: string;
                                                                                    offerHash?: null | `0x${string}`;
                                                                                    signature?: null | `0x${string}`;
                                                                                    createdDate?: null | Date;
                                                                                    repayment: bigint;
                                                                                    hidden?: null | boolean;
                                                                                    maxSeniorRepayment: bigint;
                                                                                    collection: {
                                                                                        __typename?: "Collection";
                                                                                        id: string;
                                                                                        slug: string;
                                                                                        contractData: {
                                                                                            __typename?: "ContractData";
                                                                                            contractAddress: `0x${string}`;
                                                                                        };
                                                                                    };
                                                                                    currency: {
                                                                                        __typename?: "Currency";
                                                                                        symbol: string;
                                                                                        decimals: number;
                                                                                        address: `0x${string}`;
                                                                                    };
                                                                                    validators: {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[];
                                                                                } | {
                                                                                    type: undefined | "CollectionOffer" | "SingleNFTOffer";
                                                                                    lender: undefined | null | `0x${string}`;
                                                                                    borrower: undefined | null | `0x${string}`;
                                                                                    signer: undefined | null | `0x${string}`;
                                                                                    offerValidators: {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[] | {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[];
                                                                                    nftCollateralAddress: `0x${string}`;
                                                                                    nftCollateralTokenId: bigint;
                                                                                    id: string;
                                                                                    offerId: bigint;
                                                                                    lenderAddress?: null | `0x${string}`;
                                                                                    borrowerAddress?: null | `0x${string}`;
                                                                                    signerAddress?: null | `0x${string}`;
                                                                                    contractAddress: `0x${string}`;
                                                                                    requiresLiquidation?: null | boolean;
                                                                                    principalAddress: `0x${string}`;
                                                                                    principalAmount: bigint;
                                                                                    aprBps: bigint;
                                                                                    fee: bigint;
                                                                                    capacity: bigint;
                                                                                    expirationTime: bigint;
                                                                                    duration: bigint;
                                                                                    status: string;
                                                                                    offerHash?: null | `0x${string}`;
                                                                                    signature?: null | `0x${string}`;
                                                                                    createdDate?: null | Date;
                                                                                    repayment: bigint;
                                                                                    hidden?: null | boolean;
                                                                                    maxSeniorRepayment: bigint;
                                                                                    nft: {
                                                                                        __typename?: "NFT";
                                                                                        id: string;
                                                                                        tokenId: bigint;
                                                                                        collection?: null | {
                                                                                            __typename?: "Collection";
                                                                                            id: string;
                                                                                            slug: string;
                                                                                            contractData: {
                                                                                                __typename?: "ContractData";
                                                                                                contractAddress: `0x${string}`;
                                                                                            };
                                                                                        };
                                                                                    };
                                                                                    currency: {
                                                                                        __typename?: "Currency";
                                                                                        symbol: string;
                                                                                        decimals: number;
                                                                                        address: `0x${string}`;
                                                                                    };
                                                                                    validators: {
                                                                                        __typename?: "OfferValidator";
                                                                                        arguments: `0x${string}`;
                                                                                        validator: `0x${string}`;
                                                                                    }[];
                                                                                })[];
                                                                                hasNextPage: false;
                                                                                cursor: null;
                                                                            }>

                                                                            +
                                                                          • Defined in src/api/index.ts:124
                                                                          • Returns Promise<{
                                                                                loans: {
                                                                                    type: undefined | "MultiSourceLoan";
                                                                                    contractAddress: `0x${string}`;
                                                                                    nftCollateralTokenId: bigint;
                                                                                    nftCollateralAddress: undefined | `0x${string}`;
                                                                                    borrower: `0x${string}`;
                                                                                    startTime: bigint;
                                                                                    source: {
                                                                                        lender: `0x${string}`;
                                                                                        loanId: bigint;
                                                                                        startTime: bigint;
                                                                                        __typename?: "Source";
                                                                                        id: string;
                                                                                        originationFee: bigint;
                                                                                        principalAmount: bigint;
                                                                                        lenderAddress: string;
                                                                                        accruedInterest: bigint;
                                                                                        aprBps: bigint;
                                                                                    }[];
                                                                                    id: string;
                                                                                    address: `0x${string}`;
                                                                                    loanId: number;
                                                                                    timestamp: Date;
                                                                                    txHash: `0x${string}`;
                                                                                    indexInBlock: number;
                                                                                    borrowerAddress: `0x${string}`;
                                                                                    principalAddress: `0x${string}`;
                                                                                    duration: bigint;
                                                                                    status: string;
                                                                                    principalAmount: bigint;
                                                                                    blendedAprBps: number;
                                                                                    totalOriginationFee: bigint;
                                                                                    protocolFee: bigint;
                                                                                    offer: {
                                                                                        __typename?: "CollectionOffer";
                                                                                        offerId: bigint;
                                                                                        signerAddress?: null | `0x${string}`;
                                                                                    } | {
                                                                                        __typename?: "SingleNFTOffer";
                                                                                        offerId: bigint;
                                                                                        signerAddress?: null | `0x${string}`;
                                                                                    };
                                                                                    currency: {
                                                                                        __typename?: "Currency";
                                                                                        symbol: string;
                                                                                        decimals: number;
                                                                                        address: `0x${string}`;
                                                                                    };
                                                                                    repaidActivity?: null | {
                                                                                        __typename?: "LoanRepaid";
                                                                                        totalInterest: bigint;
                                                                                        timestamp: Date;
                                                                                    };
                                                                                    nft: {
                                                                                        __typename?: "NFT";
                                                                                        id: string;
                                                                                        name?: null | string;
                                                                                        tokenId: bigint;
                                                                                        nftId: string;
                                                                                        owner?: null | `0x${string}`;
                                                                                        image?: null | {
                                                                                            __typename?: "Asset";
                                                                                            data: string;
                                                                                            cacheUrl?: null | string;
                                                                                            contentTypeMime: string;
                                                                                            accessTypeName: string;
                                                                                        };
                                                                                        collection?: null | {
                                                                                            __typename?: "Collection";
                                                                                            id: string;
                                                                                            slug: string;
                                                                                            name?: null | string;
                                                                                            nftsCount?: null | number;
                                                                                            contractData: {
                                                                                                __typename?: "ContractData";
                                                                                                contractAddress: `0x${string}`;
                                                                                            };
                                                                                        };
                                                                                    };
                                                                                    sources: {
                                                                                        __typename?: "Source";
                                                                                        id: string;
                                                                                        loanId: string;
                                                                                        originationFee: bigint;
                                                                                        principalAmount: bigint;
                                                                                        lenderAddress: string;
                                                                                        accruedInterest: bigint;
                                                                                        aprBps: bigint;
                                                                                        startTime: Date;
                                                                                    }[];
                                                                                }[];
                                                                                hasNextPage: true;
                                                                                cursor: string;
                                                                            } | {
                                                                                loans: {
                                                                                    type: undefined | "MultiSourceLoan";
                                                                                    contractAddress: `0x${string}`;
                                                                                    nftCollateralTokenId: bigint;
                                                                                    nftCollateralAddress: undefined | `0x${string}`;
                                                                                    borrower: `0x${string}`;
                                                                                    startTime: bigint;
                                                                                    source: {
                                                                                        lender: `0x${string}`;
                                                                                        loanId: bigint;
                                                                                        startTime: bigint;
                                                                                        __typename?: "Source";
                                                                                        id: string;
                                                                                        originationFee: bigint;
                                                                                        principalAmount: bigint;
                                                                                        lenderAddress: string;
                                                                                        accruedInterest: bigint;
                                                                                        aprBps: bigint;
                                                                                    }[];
                                                                                    id: string;
                                                                                    address: `0x${string}`;
                                                                                    loanId: number;
                                                                                    timestamp: Date;
                                                                                    txHash: `0x${string}`;
                                                                                    indexInBlock: number;
                                                                                    borrowerAddress: `0x${string}`;
                                                                                    principalAddress: `0x${string}`;
                                                                                    duration: bigint;
                                                                                    status: string;
                                                                                    principalAmount: bigint;
                                                                                    blendedAprBps: number;
                                                                                    totalOriginationFee: bigint;
                                                                                    protocolFee: bigint;
                                                                                    offer: {
                                                                                        __typename?: "CollectionOffer";
                                                                                        offerId: bigint;
                                                                                        signerAddress?: null | `0x${string}`;
                                                                                    } | {
                                                                                        __typename?: "SingleNFTOffer";
                                                                                        offerId: bigint;
                                                                                        signerAddress?: null | `0x${string}`;
                                                                                    };
                                                                                    currency: {
                                                                                        __typename?: "Currency";
                                                                                        symbol: string;
                                                                                        decimals: number;
                                                                                        address: `0x${string}`;
                                                                                    };
                                                                                    repaidActivity?: null | {
                                                                                        __typename?: "LoanRepaid";
                                                                                        totalInterest: bigint;
                                                                                        timestamp: Date;
                                                                                    };
                                                                                    nft: {
                                                                                        __typename?: "NFT";
                                                                                        id: string;
                                                                                        name?: null | string;
                                                                                        tokenId: bigint;
                                                                                        nftId: string;
                                                                                        owner?: null | `0x${string}`;
                                                                                        image?: null | {
                                                                                            __typename?: "Asset";
                                                                                            data: string;
                                                                                            cacheUrl?: null | string;
                                                                                            contentTypeMime: string;
                                                                                            accessTypeName: string;
                                                                                        };
                                                                                        collection?: null | {
                                                                                            __typename?: "Collection";
                                                                                            id: string;
                                                                                            slug: string;
                                                                                            name?: null | string;
                                                                                            nftsCount?: null | number;
                                                                                            contractData: {
                                                                                                __typename?: "ContractData";
                                                                                                contractAddress: `0x${string}`;
                                                                                            };
                                                                                        };
                                                                                    };
                                                                                    sources: {
                                                                                        __typename?: "Source";
                                                                                        id: string;
                                                                                        loanId: string;
                                                                                        originationFee: bigint;
                                                                                        principalAmount: bigint;
                                                                                        lenderAddress: string;
                                                                                        accruedInterest: bigint;
                                                                                        aprBps: bigint;
                                                                                        startTime: Date;
                                                                                    }[];
                                                                                }[];
                                                                                hasNextPage: false;
                                                                                cursor: null;
                                                                            }>

                                                                            +
                                                                          • Defined in src/api/index.ts:155
                                                                          • Returns Promise<{
                                                                                listings: {
                                                                                    __typename?: "Listing";
                                                                                    id: string;
                                                                                    marketplaceName: MarketplaceEnum;
                                                                                    createdDate: Date;
                                                                                    desiredDuration?: null | number;
                                                                                    desiredPrincipalAddress?: null | `0x${string}`;
                                                                                    user: {
                                                                                        __typename?: "User";
                                                                                        walletAddress: `0x${string}`;
                                                                                    };
                                                                                    nft: {
                                                                                        __typename?: "NFT";
                                                                                        id: string;
                                                                                        tokenId: bigint;
                                                                                        collection?: null | {
                                                                                            __typename?: "Collection";
                                                                                            id: string;
                                                                                            slug: string;
                                                                                            contractData: {
                                                                                                __typename?: "ContractData";
                                                                                                contractAddress: `0x${string}`;
                                                                                            };
                                                                                        };
                                                                                    };
                                                                                }[];
                                                                                hasNextPage: true;
                                                                                cursor: string;
                                                                            } | {
                                                                                listings: {
                                                                                    __typename?: "Listing";
                                                                                    id: string;
                                                                                    marketplaceName: MarketplaceEnum;
                                                                                    createdDate: Date;
                                                                                    desiredDuration?: null | number;
                                                                                    desiredPrincipalAddress?: null | `0x${string}`;
                                                                                    user: {
                                                                                        __typename?: "User";
                                                                                        walletAddress: `0x${string}`;
                                                                                    };
                                                                                    nft: {
                                                                                        __typename?: "NFT";
                                                                                        id: string;
                                                                                        tokenId: bigint;
                                                                                        collection?: null | {
                                                                                            __typename?: "Collection";
                                                                                            id: string;
                                                                                            slug: string;
                                                                                            contractData: {
                                                                                                __typename?: "ContractData";
                                                                                                contractAddress: `0x${string}`;
                                                                                            };
                                                                                        };
                                                                                    };
                                                                                }[];
                                                                                hasNextPage: false;
                                                                                cursor: null;
                                                                            }>

                                                                            +
                                                                          • Defined in src/api/index.ts:183
                                                                            • @@ -194,7 +194,7 @@
                                                                              contractAddressOptional wrapperCollections?: {
                                                                                  contractData: {
                                                                                      contractAddress: `0x${string}`;
                                                                                  };
                                                                              }[]

                                                                            Returns Promise<`0x${string}`>

                                                                            +
                                                                          • Defined in src/api/index.ts:194
                                                                          • Properties

                                                                            @@ -218,7 +218,7 @@
                                                                            Optional

                                                                            Returns Promise<ListNftMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5955
                                                                          • unlistNft:function
                                                                              @@ -234,7 +234,7 @@
                                                                              Optional
                                                                          • Returns Promise<UnlistNftMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5958
                                                                          • generateCollectionOfferHash:function
                                                                              @@ -250,7 +250,7 @@
                                                                              Optional
                                                                          • Returns Promise<GenerateCollectionOfferHashMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5961
                                                                          • saveCollectionOffer:function
                                                                              @@ -266,7 +266,7 @@
                                                                              Optional
                                                                          • Returns Promise<SaveCollectionOfferMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5964
                                                                          • hideOffer:function
                                                                              @@ -282,7 +282,7 @@
                                                                              Optional
                                                                          • Returns Promise<HideOfferMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5967
                                                                          • generateSingleNftOfferHash:function
                                                                              @@ -298,7 +298,7 @@
                                                                              Optional
                                                                          • Returns Promise<GenerateSingleNftOfferHashMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5970
                                                                          • saveSingleNftOffer:function
                                                                              @@ -314,7 +314,7 @@
                                                                              Optional
                                                                          • Returns Promise<SaveSingleNftOfferMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5973
                                                                          • unhideOffer:function
                                                                              @@ -330,7 +330,7 @@
                                                                              Optional
                                                                          • Returns Promise<UnhideOfferMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5976
                                                                          • hideOrder:function
                                                                              @@ -346,7 +346,7 @@
                                                                              Optional
                                                                          • Returns Promise<HideOrderMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5979
                                                                          • publishSellAndRepayOrder:function
                                                                              @@ -362,7 +362,7 @@
                                                                              Optional
                                                                          • Returns Promise<PublishSellAndRepayOrderMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5982
                                                                          • showOrder:function
                                                                              @@ -378,7 +378,7 @@
                                                                              Optional
                                                                          • Returns Promise<ShowOrderMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5985
                                                                          • generateRenegotiationOfferHash:function
                                                                              @@ -394,7 +394,7 @@
                                                                              Optional
                                                                          • Returns Promise<GenerateRenegotiationOfferHashMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5988
                                                                          • hideRenegotiationOffer:function
                                                                              @@ -410,7 +410,7 @@
                                                                              Optional
                                                                          • Returns Promise<HideRenegotiationOfferMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5991
                                                                          • saveRenegotiationOffer:function
                                                                              @@ -426,7 +426,7 @@
                                                                              Optional
                                                                          • Returns Promise<SaveRenegotiationOfferMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5994
                                                                          • unhideRenegotiationOffer:function
                                                                              @@ -442,7 +442,7 @@
                                                                              Optional
                                                                          • Returns Promise<UnhideRenegotiationOfferMutation>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:5997
                                                                          • collections:function
                                                                              @@ -458,7 +458,7 @@
                                                                              Optional
                                                                          • Returns Promise<CollectionsQuery>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:6000
                                                                          • collectionByContractAddress:function
                                                                              @@ -474,7 +474,7 @@
                                                                              Optional
                                                                          • Returns Promise<CollectionByContractAddressQuery>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:6003
                                                                          • collectionsIdByContractAddress:function
                                                                              @@ -490,7 +490,7 @@
                                                                              Optional
                                                                          • Returns Promise<CollectionsIdByContractAddressQuery>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:6006
                                                                          • collectionIdBySlug:function
                                                                              @@ -506,7 +506,7 @@
                                                                              Optional
                                                                          • Returns Promise<CollectionIdBySlugQuery>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:6009
                                                                          • listListings:function
                                                                              @@ -522,7 +522,7 @@
                                                                              Optional
                                                                          • Returns Promise<ListListingsQuery>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:6012
                                                                          • listLoans:function
                                                                              @@ -538,7 +538,7 @@
                                                                              Optional
                                                                          • Returns Promise<ListLoansQuery>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:6015
                                                                          • nftIdByContractAddressAndTokenId:function
                                                                              @@ -554,7 +554,7 @@
                                                                              Optional
                                                                          • Returns Promise<NftIdByContractAddressAndTokenIdQuery>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:6018
                                                                          • nftIdBySlugTokenId:function
                                                                              @@ -570,7 +570,7 @@
                                                                              Optional
                                                                          • Returns Promise<NftIdBySlugTokenIdQuery>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:6021
                                                                          • ownedNfts:function
                                                                              @@ -586,7 +586,7 @@
                                                                              Optional
                                                                          • Returns Promise<OwnedNftsQuery>

                                                                            +
                                                                          • Defined in src/generated/graphql/index.ts:6024
                                                                          • listOffers:function
                                                                              @@ -602,9 +602,9 @@
                                                                              Optional
                                                                          • Returns Promise<ListOffersQuery>

                                                                            +
                                                                          • Defined in src/api/index.ts:35
                                                                          • generateSingleNftOfferHash: ((variables, options?) => Promise<GenerateSingleNftOfferHashMutation>)
                                                                            @@ -625,7 +625,7 @@
                                                                            Optional

                                                                            Returns Promise<GenerateSingleNftOfferHashMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:36
                                                                          • generateCollectionOfferHash: ((variables, options?) => Promise<GenerateCollectionOfferHashMutation>)
                                                                            @@ -646,7 +646,7 @@
                                                                            Optional

                                                                            Returns Promise<GenerateCollectionOfferHashMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:37
                                                                          • generateRenegotiationOfferHash: ((variables, options?) => Promise<GenerateRenegotiationOfferHashMutation>)
                                                                            @@ -667,7 +667,7 @@
                                                                            Optional

                                                                            Returns Promise<GenerateRenegotiationOfferHashMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:38
                                                                          • nftIdBySlugTokenId: ((variables, options?) => Promise<NftIdBySlugTokenIdQuery>)
                                                                            @@ -688,7 +688,7 @@
                                                                            Optional

                                                                            Returns Promise<NftIdBySlugTokenIdQuery>

                                                                            +
                                                                          • Defined in src/api/index.ts:39
                                                                          • nftIdByContractAddressAndTokenId: ((variables, options?) => Promise<NftIdByContractAddressAndTokenIdQuery>)
                                                                            @@ -709,7 +709,7 @@
                                                                            Optional

                                                                            Returns Promise<NftIdByContractAddressAndTokenIdQuery>

                                                                            +
                                                                          • Defined in src/api/index.ts:40
                                                                          • collections: ((variables, options?) => Promise<CollectionsQuery>)
                                                                            @@ -730,7 +730,7 @@
                                                                            Optional

                                                                            Returns Promise<CollectionsQuery>

                                                                            +
                                                                          • Defined in src/api/index.ts:41
                                                                          • collectionIdBySlug: ((variables, options?) => Promise<CollectionIdBySlugQuery>)
                                                                            @@ -751,7 +751,7 @@
                                                                            Optional

                                                                            Returns Promise<CollectionIdBySlugQuery>

                                                                            +
                                                                          • Defined in src/api/index.ts:42
                                                                          • collectionsIdByContractAddress: ((variables, options?) => Promise<CollectionsIdByContractAddressQuery>)
                                                                            @@ -772,7 +772,7 @@
                                                                            Optional

                                                                            Returns Promise<CollectionsIdByContractAddressQuery>

                                                                            +
                                                                          • Defined in src/api/index.ts:43
                                                                          • collectionByContractAddress: ((variables, options?) => Promise<CollectionByContractAddressQuery>)
                                                                            @@ -793,7 +793,7 @@
                                                                            Optional

                                                                            Returns Promise<CollectionByContractAddressQuery>

                                                                            +
                                                                          • Defined in src/api/index.ts:44
                                                                          • listNft: ((variables, options?) => Promise<ListNftMutation>)
                                                                            @@ -814,7 +814,7 @@
                                                                            Optional

                                                                            Returns Promise<ListNftMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:45
                                                                          • unlistNft: ((variables, options?) => Promise<UnlistNftMutation>)
                                                                            @@ -835,7 +835,7 @@
                                                                            Optional

                                                                            Returns Promise<UnlistNftMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:46
                                                                          • ownedNfts: ((variables?, options?) => Promise<OwnedNftsQuery>)
                                                                            @@ -856,7 +856,7 @@
                                                                            Optional

                                                                            Returns Promise<OwnedNftsQuery>

                                                                            +
                                                                          • Defined in src/api/index.ts:47
                                                                          • hideOffer: ((variables, options?) => Promise<HideOfferMutation>)
                                                                            @@ -877,7 +877,7 @@
                                                                            Optional

                                                                            Returns Promise<HideOfferMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:48
                                                                          • hideRenegotiationOffer: ((variables, options?) => Promise<HideRenegotiationOfferMutation>)
                                                                            @@ -898,7 +898,7 @@
                                                                            Optional

                                                                            Returns Promise<HideRenegotiationOfferMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:49
                                                                          • unhideOffer: ((variables, options?) => Promise<UnhideOfferMutation>)
                                                                            @@ -919,7 +919,7 @@
                                                                            Optional

                                                                            Returns Promise<UnhideOfferMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:50
                                                                          • unhideRenegotiationOffer: ((variables, options?) => Promise<UnhideRenegotiationOfferMutation>)
                                                                            @@ -940,7 +940,7 @@
                                                                            Optional

                                                                            Returns Promise<UnhideRenegotiationOfferMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:51
                                                                          • hideOrder: ((variables, options?) => Promise<HideOrderMutation>)
                                                                            @@ -961,7 +961,7 @@
                                                                            Optional

                                                                            Returns Promise<HideOrderMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:52
                                                                          • showOrder: ((variables, options?) => Promise<ShowOrderMutation>)
                                                                            @@ -982,7 +982,7 @@
                                                                            Optional

                                                                            Returns Promise<ShowOrderMutation>

                                                                            +
                                                                          • Defined in src/api/index.ts:53
                                                                          • @@ -37,7 +37,7 @@

                                                                            Hierarchy

                                                                          • PurchaseBundler
                                                                          • OldERC721Wrapper
                                                                          • +
                                                                          • Defined in src/contracts/BaseContract.ts:21
                                                                          • @@ -88,7 +88,7 @@
                                                                            addressabi: TAbi

                                                                            Returns BaseContract<TAbi>

                                                                            +
                                                                          • Defined in src/contracts/BaseContract.ts:40
                                                                          • Methods

                                                                            @@ -103,19 +103,19 @@

                                                                            Parameters

                                                                            data: `0x${string}`

                                                                            Returns Promise<{
                                                                                txHash: `0x${string}`;
                                                                                waitTxInBlock: (() => Promise<TransactionReceipt>);
                                                                            }>

                                                                            +
                                                                          • Defined in src/contracts/BaseContract.ts:93
                                                                          • Properties

                                                                            abi: TAbi
                                                                            +
                                                                          • Defined in src/contracts/BaseContract.ts:22
                                                                          • address: `0x${string}`
                                                                            +
                                                                          • Defined in src/contracts/BaseContract.ts:23
                                                                          • bcClient: {}
                                                                            @@ -123,7 +123,7 @@
                                                                              +
                                                                            • Defined in src/contracts/BaseContract.ts:24
                                                                            • wallet: {}
                                                                              @@ -131,17 +131,17 @@
                                                                              +
                                                                            • Defined in src/contracts/BaseContract.ts:25
                                                                            • contract: GetContractReturnType<TAbi, {} | {}>
                                                                              +
                                                                            • Defined in src/contracts/BaseContract.ts:26
                                                                            • safeContractWrite: {
                                                                                  [TFunctionName in string]: ((args, options?) => Promise<`0x${string}`>)
                                                                              }
                                                                              +
                                                                            • Defined in src/contracts/BaseContract.ts:28
                                                                            • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<TAbi, TFunctionName, true, TFunctionName extends ContractEventName<TAbi>[]
                                                                                  ? TFunctionName[number]
                                                                                  : TFunctionName>)
                                                                              @@ -166,7 +166,7 @@
                                                                              eventName: logs: Log<bigint, number, false>[]

                                                                              Returns ParseEventLogsReturnType<TAbi, TFunctionName, true, TFunctionName extends ContractEventName<TAbi>[]
                                                                                  ? TFunctionName[number]
                                                                                  : TFunctionName>

                                                                              +
                                                                            • Defined in src/contracts/BaseContract.ts:35
                                                                            • @@ -21,7 +21,7 @@

                                                                              Hierarchy

                                                                              • Contracts
                                                                              +
                                                                            • Defined in src/contracts/index.ts:32
                                                                            • @@ -78,7 +78,7 @@
                                                                              walletClient:

                                                                              Returns Contracts

                                                                              +
                                                                            • Defined in src/contracts/index.ts:47
                                                                            • Methods

                                                                              @@ -93,7 +93,7 @@

                                                                              Parameters

                                                                              address: `0x${string}`

                                                                              Returns BaseContract<never[]>

                                                                              +
                                                                            • Defined in src/contracts/index.ts:73
                                                                              • @@ -106,7 +106,7 @@

                                                                                Parameters

                                                                                contractAddress: `0x${string}`

                                                                              Returns MslV6 | MslV5 | MslV4

                                                                              +
                                                                            • Defined in src/contracts/index.ts:81
                                                                            • +
                                                                            • Defined in src/contracts/index.ts:99
                                                                            • +
                                                                            • Defined in src/contracts/index.ts:117
                                                                              • @@ -155,7 +155,7 @@

                                                                                Parameters

                                                                                contractAddress: `0x${string}`

                                                                              Returns UserVaultV6 | UserVaultV5

                                                                              +
                                                                            • Defined in src/contracts/index.ts:127
                                                                            • Returns BaseContract<Erc721Or1155ABI>

                                                                              +
                                                                            • Defined in src/contracts/index.ts:138
                                                                              • @@ -183,7 +183,7 @@

                                                                                Parameters

                                                                                address: `0x${string}`

                                                                              Returns BaseContract<readonly [{
                                                                                  type: "event";
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      name: "owner";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "spender";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                      indexed: true;
                                                                                  }];
                                                                                  name: "Approval";
                                                                              }, {
                                                                                  type: "event";
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      name: "owner";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "operator";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "approved";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                      indexed: false;
                                                                                  }];
                                                                                  name: "ApprovalForAll";
                                                                              }, {
                                                                                  type: "event";
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                      indexed: true;
                                                                                  }];
                                                                                  name: "Transfer";
                                                                              }, {
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "spender";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "approve";
                                                                                  outputs: readonly [];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "owner";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "balanceOf";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "getApproved";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "isApprovedForAll";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [];
                                                                                  name: "name";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "string";
                                                                                      type: "string";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "ownerOf";
                                                                                  outputs: readonly [{
                                                                                      name: "owner";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "safeTransferFrom";
                                                                                  outputs: readonly [];
                                                                              }, {
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "data";
                                                                                      internalType: "bytes";
                                                                                      type: "bytes";
                                                                                  }];
                                                                                  name: "safeTransferFrom";
                                                                                  outputs: readonly [];
                                                                              }, {
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "operator";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "approved";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                  }];
                                                                                  name: "setApprovalForAll";
                                                                                  outputs: readonly [];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "interfaceId";
                                                                                      internalType: "bytes4";
                                                                                      type: "bytes4";
                                                                                  }];
                                                                                  name: "supportsInterface";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [];
                                                                                  name: "symbol";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "string";
                                                                                      type: "string";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "tokenURI";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "string";
                                                                                      type: "string";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "transferFrom";
                                                                                  outputs: readonly [];
                                                                              }]>

                                                                              +
                                                                            • Defined in src/contracts/index.ts:148
                                                                              • @@ -196,7 +196,7 @@

                                                                                Parameters

                                                                                address: `0x${string}`

                                                                              Returns BaseContract<readonly [{
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_uri";
                                                                                      type: "string";
                                                                                  }, {
                                                                                      name: "_editions";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "_salePrice";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "addNewTokenWithEditions";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "_salePrice";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "setSalePrice";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [];
                                                                                  name: "name";
                                                                                  outputs: readonly [{
                                                                                      name: "_name";
                                                                                      type: "string";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "pure";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_to";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "approve";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [];
                                                                                  name: "totalSupply";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "currentBidDetailsOfToken";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "";
                                                                                      type: "address";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "approvedFor";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "address";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "acceptBid";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_creator";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "isWhitelisted";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "bool";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "bid";
                                                                                  outputs: readonly [];
                                                                                  payable: true;
                                                                                  stateMutability: "payable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_owner";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "tokensOf";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "uint256[]";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_percentage";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "setMaintainerPercentage";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_creator";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "whitelistCreator";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "ownerOf";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "address";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_uri";
                                                                                      type: "string";
                                                                                  }];
                                                                                  name: "originalTokenOfUri";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_owner";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "balanceOf";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [];
                                                                                  name: "owner";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "address";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [];
                                                                                  name: "symbol";
                                                                                  outputs: readonly [{
                                                                                      name: "_symbol";
                                                                                      type: "string";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "pure";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "cancelBid";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "salePriceOfToken";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_to";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "transfer";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "takeOwnership";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_percentage";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "setCreatorPercentage";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "tokenURI";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "string";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "creatorOfToken";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "address";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "buy";
                                                                                  outputs: readonly [];
                                                                                  payable: true;
                                                                                  stateMutability: "payable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "_uri";
                                                                                      type: "string";
                                                                                  }];
                                                                                  name: "addNewToken";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [];
                                                                                  name: "creatorPercentage";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: true;
                                                                                  inputs: readonly [];
                                                                                  name: "maintainerPercentage";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  payable: false;
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                              }, {
                                                                                  constant: false;
                                                                                  inputs: readonly [{
                                                                                      name: "newOwner";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "transferOwnership";
                                                                                  outputs: readonly [];
                                                                                  payable: false;
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                              }, {
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      indexed: true;
                                                                                      name: "_creator";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "WhitelistCreator";
                                                                                  type: "event";
                                                                              }, {
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      indexed: true;
                                                                                      name: "_bidder";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_amount";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "Bid";
                                                                                  type: "event";
                                                                              }, {
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      indexed: true;
                                                                                      name: "_bidder";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_seller";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: false;
                                                                                      name: "_amount";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "AcceptBid";
                                                                                  type: "event";
                                                                              }, {
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      indexed: true;
                                                                                      name: "_bidder";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_amount";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "CancelBid";
                                                                                  type: "event";
                                                                              }, {
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      indexed: true;
                                                                                      name: "_buyer";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_seller";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: false;
                                                                                      name: "_amount";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "Sold";
                                                                                  type: "event";
                                                                              }, {
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      indexed: true;
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_price";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "SalePriceSet";
                                                                                  type: "event";
                                                                              }, {
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      indexed: true;
                                                                                      name: "previousOwner";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "newOwner";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "OwnershipTransferred";
                                                                                  type: "event";
                                                                              }, {
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      indexed: true;
                                                                                      name: "_from";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_to";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: false;
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "Transfer";
                                                                                  type: "event";
                                                                              }, {
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      indexed: true;
                                                                                      name: "_owner";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: true;
                                                                                      name: "_approved";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      indexed: false;
                                                                                      name: "_tokenId";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "Approval";
                                                                                  type: "event";
                                                                              }]>

                                                                              +
                                                                            • Defined in src/contracts/index.ts:156
                                                                              • @@ -209,7 +209,7 @@

                                                                                Parameters

                                                                                address: `0x${string}`

                                                                              Returns BaseContract<readonly [{
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "balanceOf";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  stateMutability: "view";
                                                                              }, {
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "owners";
                                                                                      internalType: "address[]";
                                                                                      type: "address[]";
                                                                                  }, {
                                                                                      name: "ids";
                                                                                      internalType: "uint256[]";
                                                                                      type: "uint256[]";
                                                                                  }];
                                                                                  name: "balanceOfBatch";
                                                                                  outputs: readonly [{
                                                                                      name: "balances";
                                                                                      internalType: "uint256[]";
                                                                                      type: "uint256[]";
                                                                                  }];
                                                                                  stateMutability: "view";
                                                                              }, {
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "isApprovedForAll";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                  }];
                                                                                  stateMutability: "view";
                                                                              }, {
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "ids";
                                                                                      internalType: "uint256[]";
                                                                                      type: "uint256[]";
                                                                                  }, {
                                                                                      name: "amounts";
                                                                                      internalType: "uint256[]";
                                                                                      type: "uint256[]";
                                                                                  }, {
                                                                                      name: "data";
                                                                                      internalType: "bytes";
                                                                                      type: "bytes";
                                                                                  }];
                                                                                  name: "safeBatchTransferFrom";
                                                                                  outputs: readonly [];
                                                                                  stateMutability: "nonpayable";
                                                                              }, {
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "amount";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "data";
                                                                                      internalType: "bytes";
                                                                                      type: "bytes";
                                                                                  }];
                                                                                  name: "safeTransferFrom";
                                                                                  outputs: readonly [];
                                                                                  stateMutability: "nonpayable";
                                                                              }, {
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "operator";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "approved";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                  }];
                                                                                  name: "setApprovalForAll";
                                                                                  outputs: readonly [];
                                                                                  stateMutability: "nonpayable";
                                                                              }, {
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "interfaceId";
                                                                                      internalType: "bytes4";
                                                                                      type: "bytes4";
                                                                                  }];
                                                                                  name: "supportsInterface";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                  }];
                                                                                  stateMutability: "view";
                                                                              }, {
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "uri";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "string";
                                                                                      type: "string";
                                                                                  }];
                                                                                  stateMutability: "view";
                                                                              }, {
                                                                                  type: "event";
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      name: "owner";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "operator";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "approved";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                      indexed: false;
                                                                                  }];
                                                                                  name: "ApprovalForAll";
                                                                              }, {
                                                                                  type: "event";
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      name: "operator";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "ids";
                                                                                      internalType: "uint256[]";
                                                                                      type: "uint256[]";
                                                                                      indexed: false;
                                                                                  }, {
                                                                                      name: "amounts";
                                                                                      internalType: "uint256[]";
                                                                                      type: "uint256[]";
                                                                                      indexed: false;
                                                                                  }];
                                                                                  name: "TransferBatch";
                                                                              }, {
                                                                                  type: "event";
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      name: "operator";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                      indexed: false;
                                                                                  }, {
                                                                                      name: "amount";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                      indexed: false;
                                                                                  }];
                                                                                  name: "TransferSingle";
                                                                              }, {
                                                                                  type: "event";
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      name: "value";
                                                                                      internalType: "string";
                                                                                      type: "string";
                                                                                      indexed: false;
                                                                                  }, {
                                                                                      name: "id";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                      indexed: true;
                                                                                  }];
                                                                                  name: "URI";
                                                                              }]>

                                                                              +
                                                                            • Defined in src/contracts/index.ts:164
                                                                              • @@ -222,7 +222,7 @@

                                                                                Parameters

                                                                                address: `0x${string}`

                                                                              Returns OldERC721Wrapper

                                                                              +
                                                                            • Defined in src/contracts/index.ts:172
                                                                              • @@ -235,7 +235,7 @@

                                                                                Parameters

                                                                                address: `0x${string}`

                                                                              Returns BaseContract<readonly [{
                                                                                  type: "event";
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      name: "owner";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "spender";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "amount";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                      indexed: false;
                                                                                  }];
                                                                                  name: "Approval";
                                                                              }, {
                                                                                  type: "event";
                                                                                  anonymous: false;
                                                                                  inputs: readonly [{
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                      indexed: true;
                                                                                  }, {
                                                                                      name: "amount";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                      indexed: false;
                                                                                  }];
                                                                                  name: "Transfer";
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [];
                                                                                  name: "DOMAIN_SEPARATOR";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "bytes32";
                                                                                      type: "bytes32";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "allowance";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "spender";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "amount";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "approve";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "balanceOf";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [];
                                                                                  name: "decimals";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "uint8";
                                                                                      type: "uint8";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [];
                                                                                  name: "name";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "string";
                                                                                      type: "string";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }];
                                                                                  name: "nonces";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "owner";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "spender";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "value";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "deadline";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }, {
                                                                                      name: "v";
                                                                                      internalType: "uint8";
                                                                                      type: "uint8";
                                                                                  }, {
                                                                                      name: "r";
                                                                                      internalType: "bytes32";
                                                                                      type: "bytes32";
                                                                                  }, {
                                                                                      name: "s";
                                                                                      internalType: "bytes32";
                                                                                      type: "bytes32";
                                                                                  }];
                                                                                  name: "permit";
                                                                                  outputs: readonly [];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [];
                                                                                  name: "symbol";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "string";
                                                                                      type: "string";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "view";
                                                                                  type: "function";
                                                                                  inputs: readonly [];
                                                                                  name: "totalSupply";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "amount";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "transfer";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                  }];
                                                                              }, {
                                                                                  stateMutability: "nonpayable";
                                                                                  type: "function";
                                                                                  inputs: readonly [{
                                                                                      name: "from";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "to";
                                                                                      internalType: "address";
                                                                                      type: "address";
                                                                                  }, {
                                                                                      name: "amount";
                                                                                      internalType: "uint256";
                                                                                      type: "uint256";
                                                                                  }];
                                                                                  name: "transferFrom";
                                                                                  outputs: readonly [{
                                                                                      name: "";
                                                                                      internalType: "bool";
                                                                                      type: "bool";
                                                                                  }];
                                                                              }]>

                                                                              +
                                                                            • Defined in src/contracts/index.ts:179
                                                                            • Properties

                                                                              @@ -245,7 +245,7 @@
                                                                              +
                                                                            • Defined in src/contracts/index.ts:33
                                                                            • walletClient: {}
                                                                              @@ -253,57 +253,57 @@
                                                                              +
                                                                            • Defined in src/contracts/index.ts:34
                                                                            • MultiSourceLoanV4: MslV4
                                                                              +
                                                                            • Defined in src/contracts/index.ts:36
                                                                            • MultiSourceLoanV5: MslV5
                                                                              +
                                                                            • Defined in src/contracts/index.ts:37
                                                                            • MultiSourceLoanV6: MslV6
                                                                              +
                                                                            • Defined in src/contracts/index.ts:38
                                                                            • AuctionLoanLiquidatorV4: AllV4
                                                                              +
                                                                            • Defined in src/contracts/index.ts:39
                                                                            • AuctionLoanLiquidatorV5: AllV5
                                                                              +
                                                                            • Defined in src/contracts/index.ts:40
                                                                            • AuctionLoanLiquidatorV6: AllV6
                                                                              +
                                                                            • Defined in src/contracts/index.ts:41
                                                                            • UserVaultV5: UserVaultV5
                                                                              +
                                                                            • Defined in src/contracts/index.ts:42
                                                                            • UserVaultV6: UserVaultV6
                                                                              +
                                                                            • Defined in src/contracts/index.ts:43
                                                                            • PurchaseBundlerV5: PurchaseBundler
                                                                              +
                                                                            • Defined in src/contracts/index.ts:44
                                                                            • PurchaseBundlerV6: PurchaseBundler
                                                                              +
                                                                            • Defined in src/contracts/index.ts:45
                                                                            • @@ -23,7 +23,7 @@

                                                                              Hierarchy

                                                                              • MslV4
                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:17
                                                                            • @@ -87,7 +87,7 @@
                                                                              walletClientReturns MslV4
                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:18
                                                                            • Methods

                                                                              @@ -136,7 +136,7 @@
                                                                              durationvalidators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[]

                                                                              Returns Promise<`0x${string}`>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:39
                                                                              • @@ -175,7 +175,7 @@
                                                                                durationstrictImprovement: boolean

                                                                              Returns Promise<`0x${string}`>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:70
                                                                              • @@ -191,7 +191,7 @@
                                                                                __namedParameters: id: bigint

                                                                              Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      lender: `0x${string}`;
                                                                                      offerId: bigint;
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:93
                                                                              • @@ -207,7 +207,7 @@
                                                                                __namedParameters: minId: bigint

                                                                              Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      lender: `0x${string}`;
                                                                                      minOfferId: bigint;
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:109
                                                                              • @@ -223,7 +223,7 @@
                                                                                __namedParameters: id: bigint

                                                                              Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      lender: `0x${string}`;
                                                                                      renegotiationId: bigint;
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:128
                                                                              • @@ -239,7 +239,7 @@
                                                                                __namedParameters: minId: bigint

                                                                              Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      lender: `0x${string}`;
                                                                                      minRenegotiationId: bigint;
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:146
                                                                            • Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      loan: {
                                                                                          contractAddress: `0x${string}`;
                                                                                          borrower: `0x${string}`;
                                                                                          nftCollateralTokenId: bigint;
                                                                                          nftCollateralAddress: `0x${string}`;
                                                                                          principalAddress: `0x${string}`;
                                                                                          principalAmount: bigint;
                                                                                          startTime: bigint;
                                                                                          duration: bigint;
                                                                                          source: readonly {
                                                                                              loanId: bigint;
                                                                                              lender: `0x${string}`;
                                                                                              principalAmount: bigint;
                                                                                              accruedInterest: bigint;
                                                                                              startTime: bigint;
                                                                                              aprBps: bigint;
                                                                                          }[];
                                                                                          id: string;
                                                                                      };
                                                                                      loanId: bigint;
                                                                                      offerId: string;
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:177
                                                                              • @@ -272,7 +272,7 @@
                                                                                loanIdOptional nftReceiver?: `0x${string}`

                                                                              Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      loanId: bigint;
                                                                                      totalRepayment: bigint;
                                                                                      fee: bigint;
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:206
                                                                            • +
                                                                            • Defined in src/contracts/MslV4.ts:232
                                                                            • +
                                                                            • Defined in src/contracts/MslV4.ts:236
                                                                              • @@ -306,7 +306,7 @@
                                                                                renegotiationIdrefinancings: {
                                                                                    loan: LoanV4;
                                                                                    newAprBps: bigint;
                                                                                    sources: {
                                                                                        source: {
                                                                                            loanId: bigint;
                                                                                            lender: `0x${string}`;
                                                                                            principalAmount: bigint;
                                                                                            accruedInterest: bigint;
                                                                                            startTime: bigint;
                                                                                            aprBps: bigint;
                                                                                        };
                                                                                        refinancingPrincipal: bigint;
                                                                                    }[];
                                                                                }[]

                                                                              Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      results: {
                                                                                          renegotiationId: bigint;
                                                                                          oldLoanId: bigint;
                                                                                          newLoanId: bigint;
                                                                                          loan: {
                                                                                              borrower: `0x${string}`;
                                                                                              nftCollateralTokenId: bigint;
                                                                                              nftCollateralAddress: `0x${string}`;
                                                                                              principalAddress: `0x${string}`;
                                                                                              principalAmount: bigint;
                                                                                              startTime: bigint;
                                                                                              duration: bigint;
                                                                                              source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                                          };
                                                                                          fee: bigint;
                                                                                      }[];
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:240
                                                                              • @@ -349,7 +349,7 @@
                                                                                signatureloan: LoanV4

                                                                              Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      loan: {
                                                                                          contractAddress: `0x${string}`;
                                                                                          borrower: `0x${string}`;
                                                                                          nftCollateralTokenId: bigint;
                                                                                          nftCollateralAddress: `0x${string}`;
                                                                                          principalAddress: `0x${string}`;
                                                                                          principalAmount: bigint;
                                                                                          startTime: bigint;
                                                                                          duration: bigint;
                                                                                          source: readonly {
                                                                                              loanId: bigint;
                                                                                              lender: `0x${string}`;
                                                                                              principalAmount: bigint;
                                                                                              accruedInterest: bigint;
                                                                                              startTime: bigint;
                                                                                              aprBps: bigint;
                                                                                          }[];
                                                                                          id: string;
                                                                                      };
                                                                                      loanId: bigint;
                                                                                      renegotiationId: string;
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:297
                                                                              • @@ -390,7 +390,7 @@
                                                                                strictImprovementloan: LoanV4

                                                                              Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      loan: {
                                                                                          contractAddress: `0x${string}`;
                                                                                          borrower: `0x${string}`;
                                                                                          nftCollateralTokenId: bigint;
                                                                                          nftCollateralAddress: `0x${string}`;
                                                                                          principalAddress: `0x${string}`;
                                                                                          principalAmount: bigint;
                                                                                          startTime: bigint;
                                                                                          duration: bigint;
                                                                                          source: readonly {
                                                                                              loanId: bigint;
                                                                                              lender: `0x${string}`;
                                                                                              principalAmount: bigint;
                                                                                              accruedInterest: bigint;
                                                                                              startTime: bigint;
                                                                                              aprBps: bigint;
                                                                                          }[];
                                                                                          id: string;
                                                                                      };
                                                                                      loanId: bigint;
                                                                                      renegotiationId: string;
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:312
                                                                            • +
                                                                            • Defined in src/contracts/MslV4.ts:352
                                                                            • +
                                                                            • Defined in src/contracts/MslV4.ts:356
                                                                            • +
                                                                            • Defined in src/contracts/MslV4.ts:360
                                                                            • +
                                                                            • Defined in src/contracts/MslV4.ts:364
                                                                            • +
                                                                            • Defined in src/contracts/MslV4.ts:368
                                                                              • @@ -438,7 +438,7 @@
                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:372
                                                                              • @@ -456,7 +456,7 @@
                                                                                loanloanId: bigint

                                                                              Returns Promise<{
                                                                                  txHash: `0x${string}`;
                                                                                  waitTxInBlock: (() => Promise<{
                                                                                      loanId: bigint;
                                                                                  }>);
                                                                              }>

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:375
                                                                              • @@ -469,7 +469,7 @@

                                                                                Parameters

                                                                                calldata: `0x${string}`

                                                                              Returns `0x${string}`

                                                                              +
                                                                            • Defined in src/contracts/MslV4.ts:396
                                                                            • +
                                                                            • Defined in src/contracts/BaseContract.ts:93
                                                                            • Properties

                                                                              @@ -491,13 +491,13 @@
                                                                              +
                                                                            • Defined in src/contracts/BaseContract.ts:22
                                                                            • address: `0x${string}`
                                                                              +
                                                                            • Defined in src/contracts/BaseContract.ts:23
                                                                            • bcClient: {}
                                                                              @@ -506,7 +506,7 @@

                                                                              Type declaration

                                                                                +
                                                                              • Defined in src/contracts/BaseContract.ts:24
                                                                              • wallet: {}
                                                                                @@ -515,13 +515,13 @@

                                                                                Type declaration

                                                                                  +
                                                                                • Defined in src/contracts/BaseContract.ts:25
                                                                                • contract: GetContractReturnType<readonly [{
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "constructor";
                                                                                      inputs: readonly [{
                                                                                          name: "loanLiquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "protocolFee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "currencyManager";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "collectionManager";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "maxSources";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "AddressZeroError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "CancelledOrExecutedOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "CancelledRenegotiationOffer";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "CancelledRenegotiationOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "CannotLiquidateError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "CollectionNotWhitelistedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "CurrencyNotWhitelistedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ExpiredLoanError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_expirationTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "ExpiredOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_expirationTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "ExpiredRenegotiationOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidBorrowerError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidCallbackError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidCollateralIdError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidLiquidationError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "InvalidLoanError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_fraction";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "InvalidProtocolFeeError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidRenegotiationOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidSignatureError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidSignerError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "LengthMismatchError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_liquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "LiquidatorOnlyError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "LoanExpiredError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_expirationTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LoanNotDueError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LoanNotFoundError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_newMinOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LowOfferIdError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_newMinRenegotiationOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LowRenegotiationOfferIdError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "MaxCapacityExceededError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_id";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "NotMintedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "NotStrictlyImprovedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "OnlyBorrowerCallableError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "OnlyLenderOrSignerCallableError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "PartialOfferCannotChangeDurationError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "PartialOfferCannotHaveFeeError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "RefinanceFullError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "RepaymentError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "sourcePrincipal";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "loanPrincipal";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "TargetPrincipalTooLowError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_pendingProtocolFeeSetTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "TooEarlyError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "sources";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                      name: "TooManySourcesError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "Unauthorized";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_authorized";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "UnauthorizedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ZeroAddressError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ZeroDurationError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ZeroInterestError";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "AllOffersCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "minRenegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "AllRenegotiationOffersCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "signer";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ApprovedSigner";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "minimum";
                                                                                          internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "interest";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ImprovementMinimumUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "newDuration";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LiquidationAuctionDurationUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "liquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LiquidationContractUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "fee";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanEmitted";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanForeclosed";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "repayment";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanLiquidated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "oldLoanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "newLoanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "fee";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanRefinanced";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "totalRepayment";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "fee";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanRepaid";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "liquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanSentToLiquidator";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "newMax";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "MaxSourcesUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "OfferCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "user";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: true;
                                                                                      }, {
                                                                                          name: "newOwner";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: true;
                                                                                      }];
                                                                                      name: "OwnershipTransferred";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "fee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ProtocolFeePendingUpdate";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "fee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ProtocolFeeUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "RenegotiationOfferCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "contract_added";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "WhitelistedCallbackContractAdded";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "contract_removed";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "WhitelistedCallbackContractRemoved";
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "DOMAIN_SEPARATOR";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes32";
                                                                                          type: "bytes32";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "FEE_UPDATE_NOTICE";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes32";
                                                                                          type: "bytes32";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "MAX_PROTOCOL_FEE";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_contract";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "addWhitelistedCallbackContract";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_signer";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "approveSigner";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelAllOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_minRenegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelAllRenegotiationOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelOffer";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerIds";
                                                                                          internalType: "uint256[]";
                                                                                          type: "uint256[]";
                                                                                      }];
                                                                                      name: "cancelOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelRenegotiationOffer";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_renegotiationIds";
                                                                                          internalType: "uint256[]";
                                                                                          type: "uint256[]";
                                                                                      }];
                                                                                      name: "cancelRenegotiationOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanOffer";
                                                                                          internalType: "struct IBaseLoan.LoanOffer";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "capacity";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "requiresLiquidation";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "validators";
                                                                                              internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "validator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "arguments";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_tokenId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_lenderOfferSignature";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }, {
                                                                                          name: "_withCallback";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                      name: "emitLoan";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "getApprovedSigner";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getCollectionManager";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getCurrencyManager";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getImprovementMinimum";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "interest";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getLiquidationAuctionDuration";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint48";
                                                                                          type: "uint48";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getLiquidator";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "getLoanHash";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes32";
                                                                                          type: "bytes32";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getMaxSources";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanPrincipal";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "getMinSourcePrincipal";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getPendingProtocolFee";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getPendingProtocolFeeSetTime";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getProtocolFee";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getTotalLoansIssued";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "getUsedCapacity";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "isOfferCancelled";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "isRenegotiationOfferCancelled";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_contract";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "isWhitelistedCallbackContract";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "lenderMinOfferId";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "lenderMinRenegotiationOfferId";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                      name: "liquidateLoan";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_collateralAddress";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_collateralTokenId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_repayment";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                      name: "loanLiquidated";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "name";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "string";
                                                                                          type: "string";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                      name: "onERC721Received";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes4";
                                                                                          type: "bytes4";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "owner";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_renegotiationOffer";
                                                                                          internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "targetPrincipal";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "strictImprovement";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_renegotiationOfferSignature";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                      name: "refinanceFull";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_renegotiationOffer";
                                                                                          internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "targetPrincipal";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "strictImprovement";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                      name: "refinancePartial";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_renegotiationOffer";
                                                                                          internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                                                                          type: "tuple[]";
                                                                                          components: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "targetPrincipal";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "strictImprovement";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                          type: "tuple[]";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                      name: "refinancePartialBatch";
                                                                                      outputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256[]";
                                                                                          type: "uint256[]";
                                                                                      }, {
                                                                                          name: "loans";
                                                                                          internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                          type: "tuple[]";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_contract";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "removeWhitelistedCallbackContract";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_collateralTo";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_withCallback";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                      name: "repayLoan";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "maxSources";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                      name: "setMaxSources";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "setProtocolFee";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "newOwner";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "transferOwnership";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_newMinimum";
                                                                                          internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "interest";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                      name: "updateImprovementMinimum";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_newDuration";
                                                                                          internalType: "uint48";
                                                                                          type: "uint48";
                                                                                      }];
                                                                                      name: "updateLiquidationAuctionDuration";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "loanLiquidator";
                                                                                          internalType: "contract ILoanLiquidator";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "updateLiquidationContract";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_newProtocolFee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                      name: "updateProtocolFee";
                                                                                      outputs: readonly [];
                                                                                  }], {} | {}>
                                                                                  +
                                                                                • Defined in src/contracts/BaseContract.ts:26
                                                                                • safeContractWrite: {
                                                                                      transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                                      liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                      onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                                      addWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                      approveSigner: ((args, options?) => Promise<`0x${string}`>);
                                                                                      cancelAllOffers: ((args, options?) => Promise<`0x${string}`>);
                                                                                      cancelAllRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>);
                                                                                      cancelOffer: ((args, options?) => Promise<`0x${string}`>);
                                                                                      cancelOffers: ((args, options?) => Promise<`0x${string}`>);
                                                                                      cancelRenegotiationOffer: ((args, options?) => Promise<`0x${string}`>);
                                                                                      cancelRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>);
                                                                                      loanLiquidated: ((args, options?) => Promise<`0x${string}`>);
                                                                                      removeWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                      setProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                                                      updateImprovementMinimum: ((args, options?) => Promise<`0x${string}`>);
                                                                                      updateLiquidationAuctionDuration: ((args, options?) => Promise<`0x${string}`>);
                                                                                      updateLiquidationContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                      updateProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                                                      emitLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                      refinanceFull: ((args, options?) => Promise<`0x${string}`>);
                                                                                      refinancePartial: ((args, options?) => Promise<`0x${string}`>);
                                                                                      refinancePartialBatch: ((args, options?) => Promise<`0x${string}`>);
                                                                                      repayLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                      setMaxSources: ((args, options?) => Promise<`0x${string}`>);
                                                                                  }
                                                                                  @@ -962,7 +962,7 @@
                                                                                  Optional Returns Promise<`0x${string}`>
                                                                                  +
                                                                                • Defined in src/contracts/BaseContract.ts:28
                                                                                • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "constructor";
                                                                                      inputs: readonly [{
                                                                                          name: "loanLiquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "protocolFee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "currencyManager";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "collectionManager";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "maxSources";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "AddressZeroError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "CancelledOrExecutedOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "CancelledRenegotiationOffer";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "CancelledRenegotiationOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "CannotLiquidateError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "CollectionNotWhitelistedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "CurrencyNotWhitelistedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ExpiredLoanError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_expirationTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "ExpiredOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_expirationTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "ExpiredRenegotiationOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidBorrowerError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidCallbackError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidCollateralIdError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidLiquidationError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "InvalidLoanError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_fraction";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "InvalidProtocolFeeError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidRenegotiationOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidSignatureError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidSignerError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "LengthMismatchError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_liquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "LiquidatorOnlyError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "LoanExpiredError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_expirationTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LoanNotDueError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LoanNotFoundError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_newMinOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LowOfferIdError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_newMinRenegotiationOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LowRenegotiationOfferIdError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "MaxCapacityExceededError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_id";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "NotMintedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "NotStrictlyImprovedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "OnlyBorrowerCallableError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "OnlyLenderOrSignerCallableError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "PartialOfferCannotChangeDurationError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "PartialOfferCannotHaveFeeError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "RefinanceFullError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "RepaymentError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "sourcePrincipal";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "loanPrincipal";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "TargetPrincipalTooLowError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_pendingProtocolFeeSetTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "TooEarlyError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "sources";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                      name: "TooManySourcesError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "Unauthorized";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_authorized";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "UnauthorizedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ZeroAddressError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ZeroDurationError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ZeroInterestError";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "AllOffersCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "minRenegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "AllRenegotiationOffersCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "signer";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ApprovedSigner";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "minimum";
                                                                                          internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "interest";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ImprovementMinimumUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "newDuration";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LiquidationAuctionDurationUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "liquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LiquidationContractUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "fee";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanEmitted";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanForeclosed";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "repayment";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanLiquidated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "oldLoanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "newLoanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "fee";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanRefinanced";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "totalRepayment";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "fee";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanRepaid";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "liquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanSentToLiquidator";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "newMax";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "MaxSourcesUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "OfferCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "user";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: true;
                                                                                      }, {
                                                                                          name: "newOwner";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: true;
                                                                                      }];
                                                                                      name: "OwnershipTransferred";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "fee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ProtocolFeePendingUpdate";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "fee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ProtocolFeeUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "RenegotiationOfferCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "contract_added";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "WhitelistedCallbackContractAdded";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "contract_removed";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "WhitelistedCallbackContractRemoved";
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "DOMAIN_SEPARATOR";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes32";
                                                                                          type: "bytes32";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "FEE_UPDATE_NOTICE";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes32";
                                                                                          type: "bytes32";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "MAX_PROTOCOL_FEE";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_contract";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "addWhitelistedCallbackContract";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_signer";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "approveSigner";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelAllOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_minRenegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelAllRenegotiationOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelOffer";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerIds";
                                                                                          internalType: "uint256[]";
                                                                                          type: "uint256[]";
                                                                                      }];
                                                                                      name: "cancelOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelRenegotiationOffer";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_renegotiationIds";
                                                                                          internalType: "uint256[]";
                                                                                          type: "uint256[]";
                                                                                      }];
                                                                                      name: "cancelRenegotiationOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanOffer";
                                                                                          internalType: "struct IBaseLoan.LoanOffer";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "capacity";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "requiresLiquidation";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "validators";
                                                                                              internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "validator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "arguments";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_tokenId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_lenderOfferSignature";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }, {
                                                                                          name: "_withCallback";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                      name: "emitLoan";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "getApprovedSigner";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getCollectionManager";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getCurrencyManager";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getImprovementMinimum";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "interest";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getLiquidationAuctionDuration";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint48";
                                                                                          type: "uint48";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getLiquidator";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "getLoanHash";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes32";
                                                                                          type: "bytes32";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getMaxSources";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanPrincipal";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "getMinSourcePrincipal";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getPendingProtocolFee";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getPendingProtocolFeeSetTime";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getProtocolFee";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getTotalLoansIssued";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "getUsedCapacity";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "isOfferCancelled";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "isRenegotiationOfferCancelled";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_contract";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "isWhitelistedCallbackContract";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "lenderMinOfferId";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "lenderMinRenegotiationOfferId";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                      name: "liquidateLoan";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_collateralAddress";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_collateralTokenId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_repayment";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                      name: "loanLiquidated";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "name";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "string";
                                                                                          type: "string";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                      name: "onERC721Received";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes4";
                                                                                          type: "bytes4";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "owner";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_renegotiationOffer";
                                                                                          internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "targetPrincipal";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "strictImprovement";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_renegotiationOfferSignature";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                      name: "refinanceFull";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_renegotiationOffer";
                                                                                          internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "targetPrincipal";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "strictImprovement";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                      name: "refinancePartial";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_renegotiationOffer";
                                                                                          internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                                                                          type: "tuple[]";
                                                                                          components: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "targetPrincipal";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "strictImprovement";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                          type: "tuple[]";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                      name: "refinancePartialBatch";
                                                                                      outputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256[]";
                                                                                          type: "uint256[]";
                                                                                      }, {
                                                                                          name: "loans";
                                                                                          internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                          type: "tuple[]";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_contract";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "removeWhitelistedCallbackContract";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_collateralTo";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_withCallback";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                      name: "repayLoan";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "maxSources";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                      name: "setMaxSources";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "setProtocolFee";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "newOwner";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "transferOwnership";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_newMinimum";
                                                                                          internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "interest";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                      name: "updateImprovementMinimum";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_newDuration";
                                                                                          internalType: "uint48";
                                                                                          type: "uint48";
                                                                                      }];
                                                                                      name: "updateLiquidationAuctionDuration";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "loanLiquidator";
                                                                                          internalType: "contract ILoanLiquidator";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "updateLiquidationContract";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_newProtocolFee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                      name: "updateProtocolFee";
                                                                                      outputs: readonly [];
                                                                                  }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ApprovedSigner" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated")[]
                                                                                      ? TFunctionName[number]
                                                                                      : TFunctionName>)
                                                                                  @@ -988,7 +988,7 @@
                                                                                  logs: Returns ParseEventLogsReturnType<readonly [{
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "constructor";
                                                                                      inputs: readonly [{
                                                                                          name: "loanLiquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "protocolFee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "currencyManager";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "collectionManager";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "maxSources";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "AddressZeroError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "CancelledOrExecutedOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "CancelledRenegotiationOffer";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "CancelledRenegotiationOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "CannotLiquidateError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "CollectionNotWhitelistedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "CurrencyNotWhitelistedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ExpiredLoanError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_expirationTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "ExpiredOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_expirationTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "ExpiredRenegotiationOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidBorrowerError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidCallbackError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidCollateralIdError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidLiquidationError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "InvalidLoanError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_fraction";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "InvalidProtocolFeeError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidRenegotiationOfferError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidSignatureError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "InvalidSignerError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "LengthMismatchError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_liquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "LiquidatorOnlyError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "LoanExpiredError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_expirationTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LoanNotDueError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LoanNotFoundError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_newMinOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LowOfferIdError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_newMinRenegotiationOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "LowRenegotiationOfferIdError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "MaxCapacityExceededError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_id";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "NotMintedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "NotStrictlyImprovedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "OnlyBorrowerCallableError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "OnlyLenderOrSignerCallableError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "PartialOfferCannotChangeDurationError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "PartialOfferCannotHaveFeeError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "RefinanceFullError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "RepaymentError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "sourcePrincipal";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "loanPrincipal";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "TargetPrincipalTooLowError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_pendingProtocolFeeSetTime";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "TooEarlyError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "sources";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                      name: "TooManySourcesError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "Unauthorized";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [{
                                                                                          name: "_authorized";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "UnauthorizedError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ZeroAddressError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ZeroDurationError";
                                                                                  }, {
                                                                                      type: "error";
                                                                                      inputs: readonly [];
                                                                                      name: "ZeroInterestError";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "AllOffersCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "minRenegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "AllRenegotiationOffersCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "signer";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ApprovedSigner";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "minimum";
                                                                                          internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "interest";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ImprovementMinimumUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "newDuration";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LiquidationAuctionDurationUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "liquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LiquidationContractUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "fee";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanEmitted";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanForeclosed";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "repayment";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanLiquidated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "oldLoanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "newLoanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "fee";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanRefinanced";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "totalRepayment";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "fee";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanRepaid";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "liquidator";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "LoanSentToLiquidator";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "newMax";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "MaxSourcesUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "OfferCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "user";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: true;
                                                                                      }, {
                                                                                          name: "newOwner";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: true;
                                                                                      }];
                                                                                      name: "OwnershipTransferred";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "fee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ProtocolFeePendingUpdate";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "fee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "ProtocolFeeUpdated";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }, {
                                                                                          name: "renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "RenegotiationOfferCancelled";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "contract_added";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "WhitelistedCallbackContractAdded";
                                                                                  }, {
                                                                                      type: "event";
                                                                                      anonymous: false;
                                                                                      inputs: readonly [{
                                                                                          name: "contract_removed";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                          indexed: false;
                                                                                      }];
                                                                                      name: "WhitelistedCallbackContractRemoved";
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "DOMAIN_SEPARATOR";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes32";
                                                                                          type: "bytes32";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "FEE_UPDATE_NOTICE";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes32";
                                                                                          type: "bytes32";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "MAX_PROTOCOL_FEE";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_contract";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "addWhitelistedCallbackContract";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_signer";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "approveSigner";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_minOfferId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelAllOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_minRenegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelAllRenegotiationOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelOffer";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerIds";
                                                                                          internalType: "uint256[]";
                                                                                          type: "uint256[]";
                                                                                      }];
                                                                                      name: "cancelOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_renegotiationId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "cancelRenegotiationOffer";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_renegotiationIds";
                                                                                          internalType: "uint256[]";
                                                                                          type: "uint256[]";
                                                                                      }];
                                                                                      name: "cancelRenegotiationOffers";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanOffer";
                                                                                          internalType: "struct IBaseLoan.LoanOffer";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "capacity";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "requiresLiquidation";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "validators";
                                                                                              internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "validator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "arguments";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_tokenId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_lenderOfferSignature";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }, {
                                                                                          name: "_withCallback";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                      name: "emitLoan";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "getApprovedSigner";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getCollectionManager";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getCurrencyManager";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getImprovementMinimum";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "interest";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getLiquidationAuctionDuration";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint48";
                                                                                          type: "uint48";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getLiquidator";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "getLoanHash";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes32";
                                                                                          type: "bytes32";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getMaxSources";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanPrincipal";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "getMinSourcePrincipal";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getPendingProtocolFee";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getPendingProtocolFeeSetTime";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getProtocolFee";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "getTotalLoansIssued";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_lender";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_offerId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "getUsedCapacity";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "isOfferCancelled";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                      name: "isRenegotiationOfferCancelled";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_contract";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "isWhitelistedCallbackContract";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "lenderMinOfferId";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "lenderMinRenegotiationOfferId";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                      name: "liquidateLoan";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_collateralAddress";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_collateralTokenId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_repayment";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                      name: "loanLiquidated";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "name";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "string";
                                                                                          type: "string";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                      name: "onERC721Received";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "bytes4";
                                                                                          type: "bytes4";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "view";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "owner";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_renegotiationOffer";
                                                                                          internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "targetPrincipal";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "strictImprovement";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_renegotiationOfferSignature";
                                                                                          internalType: "bytes";
                                                                                          type: "bytes";
                                                                                      }];
                                                                                      name: "refinanceFull";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_renegotiationOffer";
                                                                                          internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "targetPrincipal";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "strictImprovement";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                      name: "refinancePartial";
                                                                                      outputs: readonly [{
                                                                                          name: "";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_renegotiationOffer";
                                                                                          internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                                                                          type: "tuple[]";
                                                                                          components: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "signer";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "targetPrincipal";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "aprBps";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "strictImprovement";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                          type: "tuple[]";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                      name: "refinancePartialBatch";
                                                                                      outputs: readonly [{
                                                                                          name: "loanId";
                                                                                          internalType: "uint256[]";
                                                                                          type: "uint256[]";
                                                                                      }, {
                                                                                          name: "loans";
                                                                                          internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                          type: "tuple[]";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_contract";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "removeWhitelistedCallbackContract";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_collateralTo";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }, {
                                                                                          name: "_loanId";
                                                                                          internalType: "uint256";
                                                                                          type: "uint256";
                                                                                      }, {
                                                                                          name: "_loan";
                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "nftCollateralTokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "nftCollateralAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAddress";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "startTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "source";
                                                                                              internalType: "struct IMultiSourceLoan.Source[]";
                                                                                              type: "tuple[]";
                                                                                              components: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "accruedInterest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          name: "_withCallback";
                                                                                          internalType: "bool";
                                                                                          type: "bool";
                                                                                      }];
                                                                                      name: "repayLoan";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "maxSources";
                                                                                          internalType: "uint8";
                                                                                          type: "uint8";
                                                                                      }];
                                                                                      name: "setMaxSources";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [];
                                                                                      name: "setProtocolFee";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "newOwner";
                                                                                          internalType: "address";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "transferOwnership";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_newMinimum";
                                                                                          internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "interest";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "duration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                      name: "updateImprovementMinimum";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_newDuration";
                                                                                          internalType: "uint48";
                                                                                          type: "uint48";
                                                                                      }];
                                                                                      name: "updateLiquidationAuctionDuration";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "loanLiquidator";
                                                                                          internalType: "contract ILoanLiquidator";
                                                                                          type: "address";
                                                                                      }];
                                                                                      name: "updateLiquidationContract";
                                                                                      outputs: readonly [];
                                                                                  }, {
                                                                                      stateMutability: "nonpayable";
                                                                                      type: "function";
                                                                                      inputs: readonly [{
                                                                                          name: "_newProtocolFee";
                                                                                          internalType: "struct IBaseLoan.ProtocolFee";
                                                                                          type: "tuple";
                                                                                          components: readonly [{
                                                                                              name: "recipient";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }];
                                                                                      name: "updateProtocolFee";
                                                                                      outputs: readonly [];
                                                                                  }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ApprovedSigner" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated")[]
                                                                                      ? TFunctionName[number]
                                                                                      : TFunctionName>
                                                                                  +
                                                                                • Defined in src/contracts/BaseContract.ts:35
                                                                                • @@ -23,7 +23,7 @@

                                                                                  Hierarchy

                                                                                  • MslV5
                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:16
                                                                                • @@ -87,7 +87,7 @@
                                                                                  walletClientReturns MslV5
                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:17
                                                                                • Methods

                                                                                  @@ -132,7 +132,7 @@
                                                                                  durationvalidators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[]

                                                                                  Returns Promise<`0x${string}`>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:38
                                                                                  • @@ -167,7 +167,7 @@
                                                                                    expirationTimeduration: bigint

                                                                                  Returns Promise<`0x${string}`>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:67
                                                                                  • @@ -183,7 +183,7 @@
                                                                                    __namedParameters: id: bigint

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          lender: `0x${string}`;
                                                                                          offerId: bigint;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:88
                                                                                  • @@ -199,7 +199,7 @@
                                                                                    __namedParameters: minId: bigint

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          lender: `0x${string}`;
                                                                                          minOfferId: bigint;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:104
                                                                                  • @@ -215,7 +215,7 @@
                                                                                    __namedParameters: id: bigint

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          lender: `0x${string}`;
                                                                                          renegotiationId: bigint;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:120
                                                                                  • @@ -231,7 +231,7 @@
                                                                                    __namedParameters: minId: bigint

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          lender: `0x${string}`;
                                                                                          minRenegotiationId: bigint;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:135
                                                                                • Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          loan: {
                                                                                              contractAddress: `0x${string}`;
                                                                                              borrower: `0x${string}`;
                                                                                              nftCollateralTokenId: bigint;
                                                                                              nftCollateralAddress: `0x${string}`;
                                                                                              principalAddress: `0x${string}`;
                                                                                              principalAmount: bigint;
                                                                                              startTime: bigint;
                                                                                              duration: bigint;
                                                                                              source: readonly {
                                                                                                  loanId: bigint;
                                                                                                  lender: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  accruedInterest: bigint;
                                                                                                  startTime: bigint;
                                                                                                  aprBps: bigint;
                                                                                              }[];
                                                                                              id: string;
                                                                                          };
                                                                                          loanId: bigint;
                                                                                          offerId: string;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:174
                                                                                • Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          results: ({
                                                                                              loanId: bigint;
                                                                                              offerId: bigint;
                                                                                              loan: {
                                                                                                  borrower: `0x${string}`;
                                                                                                  nftCollateralTokenId: bigint;
                                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                                  principalAddress: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  startTime: bigint;
                                                                                                  duration: bigint;
                                                                                                  source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                                              };
                                                                                              lender: `0x${string}`;
                                                                                              borrower: `0x${string}`;
                                                                                              fee: bigint;
                                                                                          } | {
                                                                                              delegate: `0x${string}`;
                                                                                              collection: `0x${string}`;
                                                                                              tokenId: bigint;
                                                                                          })[];
                                                                                          loan: {
                                                                                              contractAddress: `0x${string}`;
                                                                                              borrower: `0x${string}`;
                                                                                              nftCollateralTokenId: bigint;
                                                                                              nftCollateralAddress: `0x${string}`;
                                                                                              principalAddress: `0x${string}`;
                                                                                              principalAmount: bigint;
                                                                                              startTime: bigint;
                                                                                              duration: bigint;
                                                                                              source: readonly {
                                                                                                  loanId: bigint;
                                                                                                  lender: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  accruedInterest: bigint;
                                                                                                  startTime: bigint;
                                                                                                  aprBps: bigint;
                                                                                              }[];
                                                                                              id: string;
                                                                                          };
                                                                                          loanId: bigint;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:203
                                                                                  • @@ -280,7 +280,7 @@
                                                                                    loanloanId: bigint

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          loanId: bigint;
                                                                                          totalRepayment: bigint;
                                                                                          fee: bigint;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:265
                                                                                  • @@ -296,7 +296,7 @@
                                                                                    __namedParameters: loan: LoanV5

                                                                                  Returns Promise<number>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:291
                                                                                • +
                                                                                • Defined in src/contracts/MslV5.ts:307
                                                                                  • @@ -322,7 +322,7 @@
                                                                                    renegotiationIdrefinancings: {
                                                                                        loan: LoanV5;
                                                                                        newAprBps: bigint;
                                                                                        sources: {
                                                                                            source: {
                                                                                                loanId: bigint;
                                                                                                lender: `0x${string}`;
                                                                                                principalAmount: bigint;
                                                                                                accruedInterest: bigint;
                                                                                                startTime: bigint;
                                                                                                aprBps: bigint;
                                                                                            };
                                                                                            refinancingPrincipal: bigint;
                                                                                        }[];
                                                                                    }[]

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          results: {
                                                                                              renegotiationId: bigint;
                                                                                              oldLoanId: bigint;
                                                                                              newLoanId: bigint;
                                                                                              loan: {
                                                                                                  borrower: `0x${string}`;
                                                                                                  nftCollateralTokenId: bigint;
                                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                                  principalAddress: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  startTime: bigint;
                                                                                                  duration: bigint;
                                                                                                  source: readonly ({ loanId: bigint; lender: `0x${string}`; principalAmount: bigint; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                                              };
                                                                                              fee: bigint;
                                                                                          }[];
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:311
                                                                                  • @@ -361,7 +361,7 @@
                                                                                    signatureloan: LoanV5

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          loan: {
                                                                                              contractAddress: `0x${string}`;
                                                                                              borrower: `0x${string}`;
                                                                                              nftCollateralTokenId: bigint;
                                                                                              nftCollateralAddress: `0x${string}`;
                                                                                              principalAddress: `0x${string}`;
                                                                                              principalAmount: bigint;
                                                                                              startTime: bigint;
                                                                                              duration: bigint;
                                                                                              source: readonly {
                                                                                                  loanId: bigint;
                                                                                                  lender: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  accruedInterest: bigint;
                                                                                                  startTime: bigint;
                                                                                                  aprBps: bigint;
                                                                                              }[];
                                                                                              id: string;
                                                                                          };
                                                                                          loanId: bigint;
                                                                                          renegotiationId: string;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:376
                                                                                  • @@ -398,7 +398,7 @@
                                                                                    durationloan: LoanV5

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          loan: {
                                                                                              contractAddress: `0x${string}`;
                                                                                              borrower: `0x${string}`;
                                                                                              nftCollateralTokenId: bigint;
                                                                                              nftCollateralAddress: `0x${string}`;
                                                                                              principalAddress: `0x${string}`;
                                                                                              principalAmount: bigint;
                                                                                              startTime: bigint;
                                                                                              duration: bigint;
                                                                                              source: readonly {
                                                                                                  loanId: bigint;
                                                                                                  lender: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  accruedInterest: bigint;
                                                                                                  startTime: bigint;
                                                                                                  aprBps: bigint;
                                                                                              }[];
                                                                                              id: string;
                                                                                          };
                                                                                          loanId: bigint;
                                                                                          renegotiationId: string;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:391
                                                                                • +
                                                                                • Defined in src/contracts/MslV5.ts:431
                                                                                • +
                                                                                • Defined in src/contracts/MslV5.ts:435
                                                                                  • @@ -427,7 +427,7 @@

                                                                                    Parameters

                                                                                    delegations: {
                                                                                        loan: LoanV5;
                                                                                        loanId: bigint;
                                                                                        to: `0x${string}`;
                                                                                        rights?: `0x${string}`;
                                                                                        enable: boolean;
                                                                                    }[]

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          results: {
                                                                                              loanId: bigint;
                                                                                              delegate: `0x${string}`;
                                                                                              value: boolean;
                                                                                          }[];
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:439
                                                                                  • @@ -451,7 +451,7 @@
                                                                                    Optional enable: boolean

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          loan: {
                                                                                              loanId: bigint;
                                                                                              contractAddress: `0x${string}`;
                                                                                              borrower: `0x${string}`;
                                                                                              nftCollateralTokenId: bigint;
                                                                                              nftCollateralAddress: `0x${string}`;
                                                                                              principalAddress: `0x${string}`;
                                                                                              principalAmount: bigint;
                                                                                              startTime: bigint | bigint & Date;
                                                                                              duration: bigint;
                                                                                              source: readonly {
                                                                                                  loanId: bigint;
                                                                                                  lender: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  accruedInterest: bigint;
                                                                                                  startTime: bigint;
                                                                                                  aprBps: bigint;
                                                                                              }[];
                                                                                          };
                                                                                          value: boolean;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:475
                                                                                  • @@ -471,7 +471,7 @@
                                                                                    collectiontokenId: bigint

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          delegate: `0x${string}`;
                                                                                          collection: `0x${string}`;
                                                                                          tokenId: bigint;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:512
                                                                                  • @@ -489,7 +489,7 @@
                                                                                    loanloanId: bigint

                                                                                  Returns Promise<{
                                                                                      txHash: `0x${string}`;
                                                                                      waitTxInBlock: (() => Promise<{
                                                                                          loanId: bigint;
                                                                                      }>);
                                                                                  }>

                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:537
                                                                                  • @@ -509,7 +509,7 @@
                                                                                    loan
                                                                                    borrowerSignature: `0x${string}`
                                                                                  +
                                                                                • Defined in src/contracts/MslV5.ts:557
                                                                                • +
                                                                                • Defined in src/contracts/BaseContract.ts:93
                                                                                • Properties

                                                                                  @@ -531,13 +531,13 @@
                                                                                  +
                                                                                • Defined in src/contracts/BaseContract.ts:22
                                                                                • address: `0x${string}`
                                                                                  +
                                                                                • Defined in src/contracts/BaseContract.ts:23
                                                                                • bcClient: {}
                                                                                  @@ -546,7 +546,7 @@

                                                                                  Type declaration

                                                                                    +
                                                                                  • Defined in src/contracts/BaseContract.ts:24
                                                                                  • wallet: {}
                                                                                    @@ -555,13 +555,13 @@

                                                                                    Type declaration

                                                                                      +
                                                                                    • Defined in src/contracts/BaseContract.ts:25
                                                                                    • contract: GetContractReturnType<readonly [{
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "constructor";
                                                                                          inputs: readonly [{
                                                                                              name: "loanLiquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "protocolFee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }, {
                                                                                              name: "currencyManager";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "collectionManager";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "maxSources";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "delegateRegistry";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "flashActionContract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "AddressZeroError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "CancelledOrExecutedOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "CancelledRenegotiationOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "CannotLiquidateError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "CollectionNotWhitelistedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "CurrencyNotWhitelistedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ECDSAInvalidSignature";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "length";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "ECDSAInvalidSignatureLength";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "s";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                          name: "ECDSAInvalidSignatureS";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "ExpiredOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "ExpiredRenegotiationOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ExtensionNotAvailableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_amount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "InvalidAmountError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidBorrowerError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidCallbackError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidCollateralIdError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidDurationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidLenderError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidLiquidationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "InvalidLoanError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidMethodError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "InvalidProtocolFeeError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidRenegotiationOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidSignatureError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidValueError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "LengthMismatchError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_liquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "LiquidatorOnlyError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "LoanExpiredError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "LoanNotDueError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_newMinOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "LowOfferIdError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_newMinRenegotiationOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "LowRenegotiationOfferIdError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "MaxCapacityExceededError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "MinLockPeriodTooHighError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "i";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "returndata";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "MulticallFailed";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "NFTNotReturnedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "NotStrictlyImprovedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "OnlyBorrowerCallableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "OnlyLenderCallableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "OnlyLenderOrBorrowerCallableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "PartialOfferCannotChangeDurationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "PartialOfferCannotHaveFeeError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "RefinanceFullError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "minTimestamp";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "SourceCannotBeRefinancedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "sourcePrincipal";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanPrincipal";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "TargetPrincipalTooLowError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_pendingProtocolFeeSetTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "TooEarlyError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "sources";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "TooManySourcesError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ZeroDurationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ZeroInterestError";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "AllOffersCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "minRenegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "AllRenegotiationOffersCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "BorrowerOfferCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newdelegateRegistry";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "DelegateRegistryUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "value";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "Delegated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newFlashActionContract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "FlashActionContractUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "target";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "data";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "FlashActionExecuted";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "minimum";
                                                                                              internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "interest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "ImprovementMinimumUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newDuration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LiquidationAuctionDurationUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "liquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LiquidationContractUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanEmitted";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "oldLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "newLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "_extension";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanExtended";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanForeclosed";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanLiquidated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "oldLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "newLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanRefinanced";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "totalRepayment";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanRepaid";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "liquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanSentToLiquidator";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newMax";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "MaxSourcesUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "MinLockPeriodUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "OfferCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "user";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: true;
                                                                                          }, {
                                                                                              name: "newOwner";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: true;
                                                                                          }];
                                                                                          name: "OwnershipTransferred";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "fee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "ProtocolFeePendingUpdate";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "fee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "ProtocolFeeUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "RenegotiationOfferCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "collection";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "tokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "RevokeDelegate";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "contractAdded";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "tax";
                                                                                              internalType: "struct WithCallbacks.Taxes";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "buyTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }, {
                                                                                                  name: "sellTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "WhitelistedCallbackContractAdded";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "contractRemoved";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "WhitelistedCallbackContractRemoved";
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "DOMAIN_SEPARATOR";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "FEE_UPDATE_NOTICE";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "MAX_PROTOCOL_FEE";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "MIN_AUCTION_DURATION";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint48";
                                                                                              type: "uint48";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_contract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_tax";
                                                                                              internalType: "struct WithCallbacks.Taxes";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "buyTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }, {
                                                                                                  name: "sellTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }];
                                                                                          }];
                                                                                          name: "addWhitelistedCallbackContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelAllOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_minRenegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelAllRenegotiationOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelOffer";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_offerIds";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }];
                                                                                          name: "cancelOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelRenegotiationOffer";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationIds";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }];
                                                                                          name: "cancelRenegotiationOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_rights";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }, {
                                                                                              name: "_value";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                          name: "delegate";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_executionData";
                                                                                              internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "executionData";
                                                                                                  internalType: "struct IBaseLoan.ExecutionData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "offer";
                                                                                                      internalType: "struct IBaseLoan.LoanOffer";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "offerId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "fee";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "borrower";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "capacity";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "nftCollateralAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "nftCollateralTokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "expirationTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "validators";
                                                                                                          internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "validator";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "arguments";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "amount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "callbackData";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "lenderOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }, {
                                                                                                  name: "borrowerOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                          }];
                                                                                          name: "emitLoan";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_target";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_data";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "executeFlashAction";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_extension";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "extendLoan";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getCollectionManager";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getCurrencyManager";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getDelegateRegistry";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getFlashActionContract";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getImprovementMinimum";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "interest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getLiquidationAuctionDuration";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint48";
                                                                                              type: "uint48";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getLiquidator";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "getLoanHash";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getMaxSources";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getMinLockPeriod";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanPrincipal";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "getMinSourcePrincipal";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getPendingProtocolFee";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getPendingProtocolFeeSetTime";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getProtocolFee";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getTotalLoansIssued";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "getUsedCapacity";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "isBorrowerOfferCancelled";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "isOfferCancelled";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "isRenegotiationOfferCancelled";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_contract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "isWhitelistedCallbackContract";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "lenderMinRenegotiationOfferId";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                          name: "liquidateLoan";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                          name: "loanLiquidated";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "minOfferId";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "payable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "data";
                                                                                              internalType: "bytes[]";
                                                                                              type: "bytes[]";
                                                                                          }];
                                                                                          name: "multicall";
                                                                                          outputs: readonly [{
                                                                                              name: "results";
                                                                                              internalType: "bytes[]";
                                                                                              type: "bytes[]";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "name";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "string";
                                                                                              type: "string";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "onERC721Received";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes4";
                                                                                              type: "bytes4";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "owner";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationOffer";
                                                                                              internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "targetPrincipal";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_renegotiationOfferSignature";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "refinanceFull";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationOffer";
                                                                                              internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "targetPrincipal";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                          name: "refinancePartial";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_contract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "removeWhitelistedCallbackContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_repaymentData";
                                                                                              internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "data";
                                                                                                  internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "callbackData";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }, {
                                                                                                      name: "shouldDelegate";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "source";
                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "borrowerSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                          }];
                                                                                          name: "repayLoan";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_collection";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_tokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "revokeDelegate";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newDelegateRegistry";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "setDelegateRegistry";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newFlashActionContract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "setFlashActionContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "__maxSources";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "setMaxSources";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "__minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "setMinLockPeriod";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "setProtocolFee";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "newOwner";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "transferOwnership";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newMinimum";
                                                                                              internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "interest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          name: "updateImprovementMinimum";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newDuration";
                                                                                              internalType: "uint48";
                                                                                              type: "uint48";
                                                                                          }];
                                                                                          name: "updateLiquidationAuctionDuration";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "loanLiquidator";
                                                                                              internalType: "contract ILoanLiquidator";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "updateLiquidationContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newProtocolFee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          name: "updateProtocolFee";
                                                                                          outputs: readonly [];
                                                                                      }], {} | {}>
                                                                                      +
                                                                                    • Defined in src/contracts/BaseContract.ts:26
                                                                                    • safeContractWrite: {
                                                                                          transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                                          liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                          onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                                          addWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                          cancelAllOffers: ((args, options?) => Promise<`0x${string}`>);
                                                                                          cancelAllRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>);
                                                                                          cancelOffer: ((args, options?) => Promise<`0x${string}`>);
                                                                                          cancelOffers: ((args, options?) => Promise<`0x${string}`>);
                                                                                          cancelRenegotiationOffer: ((args, options?) => Promise<`0x${string}`>);
                                                                                          cancelRenegotiationOffers: ((args, options?) => Promise<`0x${string}`>);
                                                                                          loanLiquidated: ((args, options?) => Promise<`0x${string}`>);
                                                                                          removeWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                          setProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                                                          updateImprovementMinimum: ((args, options?) => Promise<`0x${string}`>);
                                                                                          updateLiquidationAuctionDuration: ((args, options?) => Promise<`0x${string}`>);
                                                                                          updateLiquidationContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                          updateProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                                                          emitLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                          refinanceFull: ((args, options?) => Promise<`0x${string}`>);
                                                                                          refinancePartial: ((args, options?) => Promise<`0x${string}`>);
                                                                                          repayLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                          setMaxSources: ((args, options?) => Promise<`0x${string}`>);
                                                                                          multicall: ((args, options?) => Promise<`0x${string}`>);
                                                                                          delegate: ((args, options?) => Promise<`0x${string}`>);
                                                                                          revokeDelegate: ((args, options?) => Promise<`0x${string}`>);
                                                                                          executeFlashAction: ((args, options?) => Promise<`0x${string}`>);
                                                                                          extendLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                          setDelegateRegistry: ((args, options?) => Promise<`0x${string}`>);
                                                                                          setFlashActionContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                          setMinLockPeriod: ((args, options?) => Promise<`0x${string}`>);
                                                                                      }
                                                                                      @@ -1110,7 +1110,7 @@
                                                                                      Optional Returns Promise<`0x${string}`>
                                                                                      +
                                                                                    • Defined in src/contracts/BaseContract.ts:28
                                                                                    • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "constructor";
                                                                                          inputs: readonly [{
                                                                                              name: "loanLiquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "protocolFee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }, {
                                                                                              name: "currencyManager";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "collectionManager";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "maxSources";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "delegateRegistry";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "flashActionContract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "AddressZeroError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "CancelledOrExecutedOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "CancelledRenegotiationOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "CannotLiquidateError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "CollectionNotWhitelistedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "CurrencyNotWhitelistedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ECDSAInvalidSignature";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "length";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "ECDSAInvalidSignatureLength";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "s";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                          name: "ECDSAInvalidSignatureS";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "ExpiredOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "ExpiredRenegotiationOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ExtensionNotAvailableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_amount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "InvalidAmountError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidBorrowerError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidCallbackError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidCollateralIdError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidDurationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidLenderError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidLiquidationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "InvalidLoanError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidMethodError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "InvalidProtocolFeeError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidRenegotiationOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidSignatureError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidValueError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "LengthMismatchError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_liquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "LiquidatorOnlyError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "LoanExpiredError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "LoanNotDueError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_newMinOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "LowOfferIdError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_newMinRenegotiationOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "LowRenegotiationOfferIdError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "MaxCapacityExceededError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "MinLockPeriodTooHighError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "i";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "returndata";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "MulticallFailed";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "NFTNotReturnedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "NotStrictlyImprovedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "OnlyBorrowerCallableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "OnlyLenderCallableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "OnlyLenderOrBorrowerCallableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "PartialOfferCannotChangeDurationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "PartialOfferCannotHaveFeeError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "RefinanceFullError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "minTimestamp";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "SourceCannotBeRefinancedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "sourcePrincipal";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanPrincipal";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "TargetPrincipalTooLowError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_pendingProtocolFeeSetTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "TooEarlyError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "sources";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "TooManySourcesError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ZeroDurationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ZeroInterestError";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "AllOffersCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "minRenegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "AllRenegotiationOffersCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "BorrowerOfferCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newdelegateRegistry";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "DelegateRegistryUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "value";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "Delegated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newFlashActionContract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "FlashActionContractUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "target";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "data";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "FlashActionExecuted";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "minimum";
                                                                                              internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "interest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "ImprovementMinimumUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newDuration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LiquidationAuctionDurationUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "liquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LiquidationContractUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanEmitted";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "oldLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "newLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "_extension";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanExtended";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanForeclosed";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanLiquidated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "oldLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "newLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanRefinanced";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "totalRepayment";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanRepaid";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "liquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanSentToLiquidator";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newMax";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "MaxSourcesUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "MinLockPeriodUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "OfferCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "user";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: true;
                                                                                          }, {
                                                                                              name: "newOwner";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: true;
                                                                                          }];
                                                                                          name: "OwnershipTransferred";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "fee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "ProtocolFeePendingUpdate";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "fee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "ProtocolFeeUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "RenegotiationOfferCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "collection";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "tokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "RevokeDelegate";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "contractAdded";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "tax";
                                                                                              internalType: "struct WithCallbacks.Taxes";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "buyTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }, {
                                                                                                  name: "sellTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "WhitelistedCallbackContractAdded";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "contractRemoved";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "WhitelistedCallbackContractRemoved";
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "DOMAIN_SEPARATOR";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "FEE_UPDATE_NOTICE";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "MAX_PROTOCOL_FEE";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "MIN_AUCTION_DURATION";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint48";
                                                                                              type: "uint48";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_contract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_tax";
                                                                                              internalType: "struct WithCallbacks.Taxes";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "buyTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }, {
                                                                                                  name: "sellTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }];
                                                                                          }];
                                                                                          name: "addWhitelistedCallbackContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelAllOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_minRenegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelAllRenegotiationOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelOffer";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_offerIds";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }];
                                                                                          name: "cancelOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelRenegotiationOffer";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationIds";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }];
                                                                                          name: "cancelRenegotiationOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_rights";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }, {
                                                                                              name: "_value";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                          name: "delegate";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_executionData";
                                                                                              internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "executionData";
                                                                                                  internalType: "struct IBaseLoan.ExecutionData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "offer";
                                                                                                      internalType: "struct IBaseLoan.LoanOffer";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "offerId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "fee";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "borrower";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "capacity";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "nftCollateralAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "nftCollateralTokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "expirationTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "validators";
                                                                                                          internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "validator";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "arguments";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "amount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "callbackData";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "lenderOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }, {
                                                                                                  name: "borrowerOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                          }];
                                                                                          name: "emitLoan";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_target";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_data";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "executeFlashAction";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_extension";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "extendLoan";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getCollectionManager";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getCurrencyManager";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getDelegateRegistry";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getFlashActionContract";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getImprovementMinimum";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "interest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getLiquidationAuctionDuration";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint48";
                                                                                              type: "uint48";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getLiquidator";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "getLoanHash";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getMaxSources";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getMinLockPeriod";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanPrincipal";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "getMinSourcePrincipal";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getPendingProtocolFee";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getPendingProtocolFeeSetTime";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getProtocolFee";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getTotalLoansIssued";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "getUsedCapacity";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "isBorrowerOfferCancelled";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "isOfferCancelled";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "isRenegotiationOfferCancelled";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_contract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "isWhitelistedCallbackContract";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "lenderMinRenegotiationOfferId";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                          name: "liquidateLoan";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                          name: "loanLiquidated";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "minOfferId";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "payable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "data";
                                                                                              internalType: "bytes[]";
                                                                                              type: "bytes[]";
                                                                                          }];
                                                                                          name: "multicall";
                                                                                          outputs: readonly [{
                                                                                              name: "results";
                                                                                              internalType: "bytes[]";
                                                                                              type: "bytes[]";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "name";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "string";
                                                                                              type: "string";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "onERC721Received";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes4";
                                                                                              type: "bytes4";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "owner";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationOffer";
                                                                                              internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "targetPrincipal";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_renegotiationOfferSignature";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "refinanceFull";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationOffer";
                                                                                              internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "targetPrincipal";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                          name: "refinancePartial";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_contract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "removeWhitelistedCallbackContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_repaymentData";
                                                                                              internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "data";
                                                                                                  internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "callbackData";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }, {
                                                                                                      name: "shouldDelegate";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "source";
                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "borrowerSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                          }];
                                                                                          name: "repayLoan";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_collection";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_tokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "revokeDelegate";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newDelegateRegistry";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "setDelegateRegistry";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newFlashActionContract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "setFlashActionContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "__maxSources";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "setMaxSources";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "__minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "setMinLockPeriod";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "setProtocolFee";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "newOwner";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "transferOwnership";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newMinimum";
                                                                                              internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "interest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          name: "updateImprovementMinimum";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newDuration";
                                                                                              internalType: "uint48";
                                                                                              type: "uint48";
                                                                                          }];
                                                                                          name: "updateLiquidationAuctionDuration";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "loanLiquidator";
                                                                                              internalType: "contract ILoanLiquidator";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "updateLiquidationContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newProtocolFee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          name: "updateProtocolFee";
                                                                                          outputs: readonly [];
                                                                                      }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated" | "BorrowerOfferCancelled" | "RevokeDelegate" | "DelegateRegistryUpdated" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "LoanExtended" | "MinLockPeriodUpdated")[]
                                                                                          ? TFunctionName[number]
                                                                                          : TFunctionName>)
                                                                                      @@ -1136,7 +1136,7 @@
                                                                                      logs: Returns ParseEventLogsReturnType<readonly [{
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "constructor";
                                                                                          inputs: readonly [{
                                                                                              name: "loanLiquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "protocolFee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }, {
                                                                                              name: "currencyManager";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "collectionManager";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "maxSources";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "delegateRegistry";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "flashActionContract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "AddressZeroError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "CancelledOrExecutedOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "CancelledRenegotiationOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "CannotLiquidateError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "CollectionNotWhitelistedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "CurrencyNotWhitelistedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ECDSAInvalidSignature";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "length";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "ECDSAInvalidSignatureLength";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "s";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                          name: "ECDSAInvalidSignatureS";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "ExpiredOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "ExpiredRenegotiationOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ExtensionNotAvailableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_amount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_principalAmount";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "InvalidAmountError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidBorrowerError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidCallbackError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidCollateralIdError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidDurationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidLenderError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidLiquidationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "InvalidLoanError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidMethodError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_fraction";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "InvalidProtocolFeeError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidRenegotiationOfferError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidSignatureError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "InvalidValueError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "LengthMismatchError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_liquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "LiquidatorOnlyError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "LoanExpiredError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_expirationTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "LoanNotDueError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_newMinOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "LowOfferIdError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_newMinRenegotiationOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "LowRenegotiationOfferIdError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "MaxCapacityExceededError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "MinLockPeriodTooHighError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "i";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "returndata";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "MulticallFailed";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "NFTNotReturnedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "NotStrictlyImprovedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "OnlyBorrowerCallableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "OnlyLenderCallableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "OnlyLenderOrBorrowerCallableError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "PartialOfferCannotChangeDurationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "PartialOfferCannotHaveFeeError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "RefinanceFullError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "minTimestamp";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "SourceCannotBeRefinancedError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "sourcePrincipal";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loanPrincipal";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "TargetPrincipalTooLowError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "_pendingProtocolFeeSetTime";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "TooEarlyError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [{
                                                                                              name: "sources";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "TooManySourcesError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ZeroDurationError";
                                                                                      }, {
                                                                                          type: "error";
                                                                                          inputs: readonly [];
                                                                                          name: "ZeroInterestError";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "AllOffersCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "minRenegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "AllRenegotiationOffersCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "BorrowerOfferCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newdelegateRegistry";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "DelegateRegistryUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "value";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "Delegated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newFlashActionContract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "FlashActionContractUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "target";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "data";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "FlashActionExecuted";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "minimum";
                                                                                              internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "interest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "ImprovementMinimumUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newDuration";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LiquidationAuctionDurationUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "liquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LiquidationContractUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "borrower";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanEmitted";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "oldLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "newLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "_extension";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanExtended";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanForeclosed";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanLiquidated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "oldLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "newLoanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanRefinanced";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "totalRepayment";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "fee";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanRepaid";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "liquidator";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "LoanSentToLiquidator";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "newMax";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "MaxSourcesUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "MinLockPeriodUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "OfferCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "user";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: true;
                                                                                          }, {
                                                                                              name: "newOwner";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: true;
                                                                                          }];
                                                                                          name: "OwnershipTransferred";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "fee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "ProtocolFeePendingUpdate";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "fee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "ProtocolFeeUpdated";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "RenegotiationOfferCancelled";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "collection";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "tokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "RevokeDelegate";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "contractAdded";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }, {
                                                                                              name: "tax";
                                                                                              internalType: "struct WithCallbacks.Taxes";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "buyTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }, {
                                                                                                  name: "sellTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }];
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "WhitelistedCallbackContractAdded";
                                                                                      }, {
                                                                                          type: "event";
                                                                                          anonymous: false;
                                                                                          inputs: readonly [{
                                                                                              name: "contractRemoved";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                              indexed: false;
                                                                                          }];
                                                                                          name: "WhitelistedCallbackContractRemoved";
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "DOMAIN_SEPARATOR";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "FEE_UPDATE_NOTICE";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "MAX_PROTOCOL_FEE";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "MIN_AUCTION_DURATION";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint48";
                                                                                              type: "uint48";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_contract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_tax";
                                                                                              internalType: "struct WithCallbacks.Taxes";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "buyTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }, {
                                                                                                  name: "sellTax";
                                                                                                  internalType: "uint128";
                                                                                                  type: "uint128";
                                                                                              }];
                                                                                          }];
                                                                                          name: "addWhitelistedCallbackContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_minOfferId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelAllOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_minRenegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelAllRenegotiationOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelOffer";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_offerIds";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }];
                                                                                          name: "cancelOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "cancelRenegotiationOffer";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationIds";
                                                                                              internalType: "uint256[]";
                                                                                              type: "uint256[]";
                                                                                          }];
                                                                                          name: "cancelRenegotiationOffers";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_rights";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }, {
                                                                                              name: "_value";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                          name: "delegate";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_executionData";
                                                                                              internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "executionData";
                                                                                                  internalType: "struct IBaseLoan.ExecutionData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "offer";
                                                                                                      internalType: "struct IBaseLoan.LoanOffer";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "offerId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "fee";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "borrower";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "capacity";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "nftCollateralAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "nftCollateralTokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "expirationTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "validators";
                                                                                                          internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "validator";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "arguments";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "amount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "callbackData";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "lenderOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }, {
                                                                                                  name: "borrowerOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                          }];
                                                                                          name: "emitLoan";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_target";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_data";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "executeFlashAction";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_extension";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "extendLoan";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getCollectionManager";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getCurrencyManager";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getDelegateRegistry";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getFlashActionContract";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getImprovementMinimum";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "interest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getLiquidationAuctionDuration";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint48";
                                                                                              type: "uint48";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getLiquidator";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "getLoanHash";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes32";
                                                                                              type: "bytes32";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getMaxSources";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getMinLockPeriod";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanPrincipal";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "getMinSourcePrincipal";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getPendingProtocolFee";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getPendingProtocolFeeSetTime";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getProtocolFee";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "getTotalLoansIssued";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_lender";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_offerId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "getUsedCapacity";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "isBorrowerOfferCancelled";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "isOfferCancelled";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "isRenegotiationOfferCancelled";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_contract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "isWhitelistedCallbackContract";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bool";
                                                                                              type: "bool";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "lenderMinRenegotiationOfferId";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                          name: "liquidateLoan";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_loanId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                          name: "loanLiquidated";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "minOfferId";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "payable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "data";
                                                                                              internalType: "bytes[]";
                                                                                              type: "bytes[]";
                                                                                          }];
                                                                                          name: "multicall";
                                                                                          outputs: readonly [{
                                                                                              name: "results";
                                                                                              internalType: "bytes[]";
                                                                                              type: "bytes[]";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "name";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "string";
                                                                                              type: "string";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "onERC721Received";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "bytes4";
                                                                                              type: "bytes4";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "view";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "owner";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationOffer";
                                                                                              internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "targetPrincipal";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_renegotiationOfferSignature";
                                                                                              internalType: "bytes";
                                                                                              type: "bytes";
                                                                                          }];
                                                                                          name: "refinanceFull";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_renegotiationOffer";
                                                                                              internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "targetPrincipal";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "aprBps";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }, {
                                                                                              name: "_loan";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                          name: "refinancePartial";
                                                                                          outputs: readonly [{
                                                                                              name: "";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }, {
                                                                                              name: "";
                                                                                              internalType: "struct IMultiSourceLoan.Loan";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "borrower";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "nftCollateralTokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "nftCollateralAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAddress";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "startTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "source";
                                                                                                  internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                  type: "tuple[]";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "accruedInterest";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                          }];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_contract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "removeWhitelistedCallbackContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_repaymentData";
                                                                                              internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "data";
                                                                                                  internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "callbackData";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }, {
                                                                                                      name: "shouldDelegate";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "source";
                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "borrowerSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                          }];
                                                                                          name: "repayLoan";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_delegate";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_collection";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }, {
                                                                                              name: "_tokenId";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "revokeDelegate";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newDelegateRegistry";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "setDelegateRegistry";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newFlashActionContract";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "setFlashActionContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "__maxSources";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "setMaxSources";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "__minLockPeriod";
                                                                                              internalType: "uint256";
                                                                                              type: "uint256";
                                                                                          }];
                                                                                          name: "setMinLockPeriod";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [];
                                                                                          name: "setProtocolFee";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "newOwner";
                                                                                              internalType: "address";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "transferOwnership";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newMinimum";
                                                                                              internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "interest";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "duration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          name: "updateImprovementMinimum";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newDuration";
                                                                                              internalType: "uint48";
                                                                                              type: "uint48";
                                                                                          }];
                                                                                          name: "updateLiquidationAuctionDuration";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "loanLiquidator";
                                                                                              internalType: "contract ILoanLiquidator";
                                                                                              type: "address";
                                                                                          }];
                                                                                          name: "updateLiquidationContract";
                                                                                          outputs: readonly [];
                                                                                      }, {
                                                                                          stateMutability: "nonpayable";
                                                                                          type: "function";
                                                                                          inputs: readonly [{
                                                                                              name: "_newProtocolFee";
                                                                                              internalType: "struct IBaseLoan.ProtocolFee";
                                                                                              type: "tuple";
                                                                                              components: readonly [{
                                                                                                  name: "recipient";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "fraction";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                          }];
                                                                                          name: "updateProtocolFee";
                                                                                          outputs: readonly [];
                                                                                      }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "AllRenegotiationOffersCancelled" | "ImprovementMinimumUpdated" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "MaxSourcesUpdated" | "BorrowerOfferCancelled" | "RevokeDelegate" | "DelegateRegistryUpdated" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "LoanExtended" | "MinLockPeriodUpdated")[]
                                                                                          ? TFunctionName[number]
                                                                                          : TFunctionName>
                                                                                      +
                                                                                    • Defined in src/contracts/BaseContract.ts:35
                                                                                    • @@ -23,7 +23,7 @@

                                                                                      Hierarchy

                                                                                      • MslV6
                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:15
                                                                                    • @@ -87,7 +87,7 @@
                                                                                      walletClientReturns MslV6
                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:16
                                                                                    • Methods

                                                                                      @@ -132,7 +132,7 @@
                                                                                      maxSeniorRepaymentvalidators: readonly ({ validator: `0x${string}`; arguments: `0x${string}`; })[]

                                                                                      Returns Promise<`0x${string}`>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:37
                                                                                      • @@ -167,7 +167,7 @@
                                                                                        expirationTimeduration: bigint

                                                                                      Returns Promise<`0x${string}`>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:66
                                                                                      • @@ -183,7 +183,7 @@
                                                                                        __namedParameters: id: bigint

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              lender: `0x${string}`;
                                                                                              offerId: bigint;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:87
                                                                                      • @@ -199,7 +199,7 @@
                                                                                        __namedParameters: minId: bigint

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              lender: `0x${string}`;
                                                                                              minOfferId: bigint;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:103
                                                                                      • @@ -215,7 +215,7 @@
                                                                                        __namedParameters: id: bigint

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              lender: `0x${string}`;
                                                                                              renegotiationId: bigint;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:119
                                                                                      • @@ -231,7 +231,7 @@
                                                                                        _: minId: bigint

                                                                                      Returns Promise<void>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:134
                                                                                    • Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              loan: {
                                                                                                  contractAddress: `0x${string}`;
                                                                                                  borrower: `0x${string}`;
                                                                                                  nftCollateralTokenId: bigint;
                                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                                  principalAddress: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  startTime: bigint;
                                                                                                  duration: bigint;
                                                                                                  tranche: readonly {
                                                                                                      loanId: bigint;
                                                                                                      floor: bigint;
                                                                                                      principalAmount: bigint;
                                                                                                      lender: `0x${string}`;
                                                                                                      accruedInterest: bigint;
                                                                                                      startTime: bigint;
                                                                                                      aprBps: bigint;
                                                                                                  }[];
                                                                                                  protocolFee: bigint;
                                                                                                  id: string;
                                                                                              };
                                                                                              loanId: bigint;
                                                                                              offerIds: string[];
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:169
                                                                                    • Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              results: ({
                                                                                                  loanId: bigint;
                                                                                                  offerId: readonly bigint[];
                                                                                                  loan: {
                                                                                                      borrower: `0x${string}`;
                                                                                                      nftCollateralTokenId: bigint;
                                                                                                      nftCollateralAddress: `0x${string}`;
                                                                                                      principalAddress: `0x${string}`;
                                                                                                      principalAmount: bigint;
                                                                                                      startTime: bigint;
                                                                                                      duration: bigint;
                                                                                                      tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                                                      protocolFee: bigint;
                                                                                                  };
                                                                                                  fee: bigint;
                                                                                              } | {
                                                                                                  delegate: `0x${string}`;
                                                                                                  collection: `0x${string}`;
                                                                                                  tokenId: bigint;
                                                                                              })[];
                                                                                              loan: {
                                                                                                  contractAddress: `0x${string}`;
                                                                                                  borrower: `0x${string}`;
                                                                                                  nftCollateralTokenId: bigint;
                                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                                  principalAddress: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  startTime: bigint;
                                                                                                  duration: bigint;
                                                                                                  tranche: readonly {
                                                                                                      loanId: bigint;
                                                                                                      floor: bigint;
                                                                                                      principalAmount: bigint;
                                                                                                      lender: `0x${string}`;
                                                                                                      accruedInterest: bigint;
                                                                                                      startTime: bigint;
                                                                                                      aprBps: bigint;
                                                                                                  }[];
                                                                                                  protocolFee: bigint;
                                                                                                  id: string;
                                                                                              };
                                                                                              loanId: bigint;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:201
                                                                                      • @@ -280,7 +280,7 @@
                                                                                        loanloanId: bigint

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              loanId: bigint;
                                                                                              totalRepayment: bigint;
                                                                                              fee: bigint;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:263
                                                                                      • @@ -296,7 +296,7 @@
                                                                                        __namedParameters: loan: LoanV6

                                                                                      Returns Promise<number>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:289
                                                                                      • @@ -312,7 +312,7 @@
                                                                                        __namedParameters: loan: Object

                                                                                      Returns Promise<boolean>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:305
                                                                                      • @@ -330,7 +330,7 @@
                                                                                        renegotiationIdrefinancings: {
                                                                                            loan: LoanV6;
                                                                                            newAprBps: bigint;
                                                                                            sources: {
                                                                                                source: {
                                                                                                    loanId: bigint;
                                                                                                    floor: bigint;
                                                                                                    principalAmount: bigint;
                                                                                                    lender: `0x${string}`;
                                                                                                    accruedInterest: bigint;
                                                                                                    startTime: bigint;
                                                                                                    aprBps: bigint;
                                                                                                } & {
                                                                                                    loanIndex: number;
                                                                                                };
                                                                                                refinancingPrincipal: bigint;
                                                                                            }[];
                                                                                        }[]

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              results: {
                                                                                                  renegotiationId: bigint;
                                                                                                  oldLoanId: bigint;
                                                                                                  newLoanId: bigint;
                                                                                                  loan: {
                                                                                                      borrower: `0x${string}`;
                                                                                                      nftCollateralTokenId: bigint;
                                                                                                      nftCollateralAddress: `0x${string}`;
                                                                                                      principalAddress: `0x${string}`;
                                                                                                      principalAmount: bigint;
                                                                                                      startTime: bigint;
                                                                                                      duration: bigint;
                                                                                                      tranche: readonly ({ loanId: bigint; floor: bigint; principalAmount: bigint; lender: `0x${string}`; accruedInterest: bigint; startTime: bigint; aprBps: bigint; })[];
                                                                                                      protocolFee: bigint;
                                                                                                  };
                                                                                                  fee: bigint;
                                                                                              }[];
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:321
                                                                                      • @@ -369,7 +369,7 @@
                                                                                        signatureloan: LoanV6

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              loan: {
                                                                                                  contractAddress: `0x${string}`;
                                                                                                  borrower: `0x${string}`;
                                                                                                  nftCollateralTokenId: bigint;
                                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                                  principalAddress: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  startTime: bigint;
                                                                                                  duration: bigint;
                                                                                                  tranche: readonly {
                                                                                                      loanId: bigint;
                                                                                                      floor: bigint;
                                                                                                      principalAmount: bigint;
                                                                                                      lender: `0x${string}`;
                                                                                                      accruedInterest: bigint;
                                                                                                      startTime: bigint;
                                                                                                      aprBps: bigint;
                                                                                                  }[];
                                                                                                  protocolFee: bigint;
                                                                                                  id: string;
                                                                                              };
                                                                                              loanId: bigint;
                                                                                              renegotiationId: string;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:383
                                                                                      • @@ -406,7 +406,7 @@
                                                                                        durationloan: LoanV6

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              loan: {
                                                                                                  contractAddress: `0x${string}`;
                                                                                                  borrower: `0x${string}`;
                                                                                                  nftCollateralTokenId: bigint;
                                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                                  principalAddress: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  startTime: bigint;
                                                                                                  duration: bigint;
                                                                                                  tranche: readonly {
                                                                                                      loanId: bigint;
                                                                                                      floor: bigint;
                                                                                                      principalAmount: bigint;
                                                                                                      lender: `0x${string}`;
                                                                                                      accruedInterest: bigint;
                                                                                                      startTime: bigint;
                                                                                                      aprBps: bigint;
                                                                                                  }[];
                                                                                                  protocolFee: bigint;
                                                                                                  id: string;
                                                                                              };
                                                                                              loanId: bigint;
                                                                                              renegotiationId: string;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:398
                                                                                      • @@ -445,7 +445,7 @@
                                                                                        signatureloan: LoanV6

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              loan: {
                                                                                                  contractAddress: `0x${string}`;
                                                                                                  borrower: `0x${string}`;
                                                                                                  nftCollateralTokenId: bigint;
                                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                                  principalAddress: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  startTime: bigint;
                                                                                                  duration: bigint;
                                                                                                  tranche: readonly {
                                                                                                      loanId: bigint;
                                                                                                      floor: bigint;
                                                                                                      principalAmount: bigint;
                                                                                                      lender: `0x${string}`;
                                                                                                      accruedInterest: bigint;
                                                                                                      startTime: bigint;
                                                                                                      aprBps: bigint;
                                                                                                  }[];
                                                                                                  protocolFee: bigint;
                                                                                                  id: string;
                                                                                              };
                                                                                              loanId: bigint;
                                                                                              renegotiationId: string;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:405
                                                                                    • Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              loan: {
                                                                                                  contractAddress: `0x${string}`;
                                                                                                  borrower: `0x${string}`;
                                                                                                  nftCollateralTokenId: bigint;
                                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                                  principalAddress: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  startTime: bigint;
                                                                                                  duration: bigint;
                                                                                                  tranche: readonly {
                                                                                                      loanId: bigint;
                                                                                                      floor: bigint;
                                                                                                      principalAmount: bigint;
                                                                                                      lender: `0x${string}`;
                                                                                                      accruedInterest: bigint;
                                                                                                      startTime: bigint;
                                                                                                      aprBps: bigint;
                                                                                                  }[];
                                                                                                  protocolFee: bigint;
                                                                                                  id: string;
                                                                                              };
                                                                                              loanId: bigint;
                                                                                              offerIds: string[];
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:420
                                                                                      • @@ -478,7 +478,7 @@

                                                                                        Parameters

                                                                                        delegations: {
                                                                                            loan: LoanV6;
                                                                                            loanId: bigint;
                                                                                            to: `0x${string}`;
                                                                                            rights?: `0x${string}`;
                                                                                            enable: boolean;
                                                                                        }[]

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              results: {
                                                                                                  loanId: bigint;
                                                                                                  delegate: `0x${string}`;
                                                                                                  _rights: `0x${string}`;
                                                                                                  value: boolean;
                                                                                              }[];
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:497
                                                                                      • @@ -502,7 +502,7 @@
                                                                                        Optional enable: boolean

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              loan: {
                                                                                                  loanId: bigint;
                                                                                                  contractAddress: `0x${string}`;
                                                                                                  borrower: `0x${string}`;
                                                                                                  nftCollateralTokenId: bigint;
                                                                                                  nftCollateralAddress: `0x${string}`;
                                                                                                  principalAddress: `0x${string}`;
                                                                                                  principalAmount: bigint;
                                                                                                  startTime: bigint | bigint & Date;
                                                                                                  duration: bigint;
                                                                                                  tranche: readonly {
                                                                                                      loanId: bigint;
                                                                                                      floor: bigint;
                                                                                                      principalAmount: bigint;
                                                                                                      lender: `0x${string}`;
                                                                                                      accruedInterest: bigint;
                                                                                                      startTime: bigint;
                                                                                                      aprBps: bigint;
                                                                                                  }[];
                                                                                                  protocolFee: bigint;
                                                                                                  contractStartTime: bigint | Date;
                                                                                              };
                                                                                              value: boolean;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:533
                                                                                      • @@ -522,7 +522,7 @@
                                                                                        collectiontokenId: bigint

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              delegate: `0x${string}`;
                                                                                              collection: `0x${string}`;
                                                                                              tokenId: bigint;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:570
                                                                                      • @@ -540,7 +540,7 @@
                                                                                        loanloanId: bigint

                                                                                      Returns Promise<{
                                                                                          txHash: `0x${string}`;
                                                                                          waitTxInBlock: (() => Promise<{
                                                                                              loanId: bigint;
                                                                                          }>);
                                                                                      }>

                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:595
                                                                                      • @@ -560,7 +560,7 @@
                                                                                        loan
                                                                                        borrowerSignature: `0x${string}`
                                                                                      +
                                                                                    • Defined in src/contracts/MslV6.ts:615
                                                                                    • +
                                                                                    • Defined in src/contracts/BaseContract.ts:93
                                                                                    • Properties

                                                                                      @@ -582,13 +582,13 @@
                                                                                      +
                                                                                    • Defined in src/contracts/BaseContract.ts:22
                                                                                    • address: `0x${string}`
                                                                                      +
                                                                                    • Defined in src/contracts/BaseContract.ts:23
                                                                                    • bcClient: {}
                                                                                      @@ -597,7 +597,7 @@

                                                                                      Type declaration

                                                                                        +
                                                                                      • Defined in src/contracts/BaseContract.ts:24
                                                                                      • wallet: {}
                                                                                        @@ -606,13 +606,13 @@

                                                                                        Type declaration

                                                                                          +
                                                                                        • Defined in src/contracts/BaseContract.ts:25
                                                                                        • contract: GetContractReturnType<readonly [{
                                                                                              type: "constructor";
                                                                                              inputs: readonly [{
                                                                                                  name: "loanLiquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "protocolFee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "currencyManager";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "collectionManager";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "maxTranches";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "minLockPeriod";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "delegateRegistry";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "loanManagerRegistry";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "flashActionContract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "minWaitTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "AddressZeroError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "CancelledOrExecutedOfferError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "CollectionNotWhitelistedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "ECDSAInvalidSignature";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "length";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "ECDSAInvalidSignatureLength";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "s";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              name: "ECDSAInvalidSignatureS";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "ExpiredOfferError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidAddressesError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_amount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "InvalidAmountError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidCallbackError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidCallerError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidCollateralIdError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidDurationError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidInputError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "InvalidLoanError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidMethodError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidParametersError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidRenegotiationOfferError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidSignatureError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidTrancheError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_liquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "LiquidatorOnlyError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "LoanExpiredError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "LoanLockedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "LoanNotDueError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_newMinOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "LowOfferIdError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_newMinRenegotiationOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "LowRenegotiationOfferIdError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "MaxCapacityExceededError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "MismatchError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "i";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "returndata";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "MulticallFailed";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "NFTNotReturnedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "NotStrictlyImprovedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_pendingProtocolFeeSetTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "TooEarlyError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "TooManyTranchesError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "TooSoonError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "minTimestamp";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "TrancheCannotBeRefinancedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "ZeroInterestError";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "AllOffersCancelled";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                                  internalType: "uint256";
                                                                                              }, {
                                                                                                  name: "delegate";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                                  internalType: "address";
                                                                                              }, {
                                                                                                  name: "_rights";
                                                                                                  type: "bytes32";
                                                                                                  indexed: false;
                                                                                                  internalType: "bytes32";
                                                                                              }, {
                                                                                                  name: "value";
                                                                                                  type: "bool";
                                                                                                  indexed: false;
                                                                                                  internalType: "bool";
                                                                                              }];
                                                                                              name: "Delegated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newFlashActionContract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "FlashActionContractUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "target";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "data";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "FlashActionExecuted";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newDuration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LiquidationAuctionDurationUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "liquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LiquidationContractUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "offerId";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanEmitted";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanForeclosed";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanLiquidated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "oldLoanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "newLoanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanRefinanced";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "newLoanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "offerIds";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "totalFee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanRefinancedFromNewOffers";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "totalRepayment";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanRepaid";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "liquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanSentToLiquidator";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "_minimum";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "MinAprImprovementUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newMinBid";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "MinBidLiquidationUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "minLockPeriod";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "MinLockPeriodUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "OfferCancelled";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: true;
                                                                                              }, {
                                                                                                  name: "newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: true;
                                                                                              }];
                                                                                              name: "OwnershipTransferred";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "fee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "ProtocolFeePendingUpdate";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "fee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "ProtocolFeeUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "RenegotiationOfferCancelled";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "delegate";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "collection";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "tokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "RevokeDelegate";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "TransferOwnerRequested";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "contractAdded";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "WhitelistedCallbackContractAdded";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "contractRemoved";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "WhitelistedCallbackContractRemoved";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "DOMAIN_SEPARATOR";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "FEE_UPDATE_NOTICE";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MAX_AUCTION_DURATION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MIN_AUCTION_DURATION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MIN_BID_LIQUIDATION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MIN_WAIT_TIME";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "VERSION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationOffer";
                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "renegotiationId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "trancheIndex";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "addNewTranche";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_contract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "addWhitelistedCallbackContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "cancelAllOffers";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "cancelOffer";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "cancelRenegotiationOffer";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_delegate";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_rights";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }, {
                                                                                                  name: "_value";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              name: "delegate";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanExecutionData";
                                                                                                  internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "executionData";
                                                                                                      internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "offerExecution";
                                                                                                          internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "offer";
                                                                                                              internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                                              type: "tuple";
                                                                                                              components: readonly [{
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "capacity";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralTokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "duration";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "maxSeniorRepayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "validators";
                                                                                                                  internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                  type: "tuple[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "validator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "arguments";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "lenderOfferSignature";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "tokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "expirationTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalReceiver";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "callbackData";
                                                                                                          internalType: "bytes";
                                                                                                          type: "bytes";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "borrowerOfferSignature";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "emitLoan";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_target";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_data";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "executeFlashAction";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getCollectionManager";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getCurrencyManager";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getDelegateRegistry";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getFlashActionContract";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getLiquidationAuctionDuration";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getLiquidator";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "getLoanHash";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getLoanManagerRegistry";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "contract ILoanManagerRegistry";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getMaxTranches";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getMinImprovementApr";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getMinLockPeriod";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getPendingProtocolFee";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getPendingProtocolFeeSetTime";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getProtocolFee";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getTotalLoansIssued";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "getUsedCapacity";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "isOfferCancelled";
                                                                                              outputs: readonly [{
                                                                                                  name: "notActive";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "renegotiationIf";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "isRenegotiationOfferCancelled";
                                                                                              outputs: readonly [{
                                                                                                  name: "notActive";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_contract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "isWhitelistedCallbackContract";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "liquidateLoan";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "loanLiquidated";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "minOfferId";
                                                                                              outputs: readonly [{
                                                                                                  name: "minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "data";
                                                                                                  internalType: "bytes[]";
                                                                                                  type: "bytes[]";
                                                                                              }];
                                                                                              name: "multicall";
                                                                                              outputs: readonly [{
                                                                                                  name: "results";
                                                                                                  internalType: "bytes[]";
                                                                                                  type: "bytes[]";
                                                                                              }];
                                                                                              stateMutability: "payable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "name";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "string";
                                                                                                  type: "string";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "onERC721Received";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes4";
                                                                                                  type: "bytes4";
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "owner";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "pendingOwner";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "pendingOwnerTime";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loanExecutionData";
                                                                                                  internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "executionData";
                                                                                                      internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "offerExecution";
                                                                                                          internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "offer";
                                                                                                              internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                                              type: "tuple";
                                                                                                              components: readonly [{
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "capacity";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralTokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "duration";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "maxSeniorRepayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "validators";
                                                                                                                  internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                  type: "tuple[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "validator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "arguments";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "lenderOfferSignature";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "tokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "expirationTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalReceiver";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "callbackData";
                                                                                                          internalType: "bytes";
                                                                                                          type: "bytes";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "borrowerOfferSignature";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "refinanceFromLoanExecutionData";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationOffer";
                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "renegotiationId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "trancheIndex";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "refinanceFull";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationOffer";
                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "renegotiationId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "trancheIndex";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "refinancePartial";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_contract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "removeWhitelistedCallbackContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_repaymentData";
                                                                                                  internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "data";
                                                                                                      internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "callbackData";
                                                                                                          internalType: "bytes";
                                                                                                          type: "bytes";
                                                                                                      }, {
                                                                                                          name: "shouldDelegate";
                                                                                                          internalType: "bool";
                                                                                                          type: "bool";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "loan";
                                                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "borrower";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "nftCollateralTokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "nftCollateralAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "tranche";
                                                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "loanId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "floor";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "lender";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "accruedInterest";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "aprBps";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "protocolFee";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "borrowerSignature";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "repayLoan";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "requestTransferOwner";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_delegate";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_collection";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_tokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "revokeDelegate";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newFlashActionContract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "setFlashActionContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "__minLockPeriod";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "setMinLockPeriod";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "setProtocolFee";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "transferOwnership";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "transferOwnership";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newDuration";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              name: "updateLiquidationAuctionDuration";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "__loanLiquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "updateLiquidationContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newMinimum";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "updateMinImprovementApr";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newProtocolFee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "updateProtocolFee";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }], {} | {}>
                                                                                          +
                                                                                        • Defined in src/contracts/BaseContract.ts:26
                                                                                        • safeContractWrite: {
                                                                                              transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                                              liquidateLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                              onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                                              addWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                              cancelAllOffers: ((args, options?) => Promise<`0x${string}`>);
                                                                                              cancelOffer: ((args, options?) => Promise<`0x${string}`>);
                                                                                              cancelRenegotiationOffer: ((args, options?) => Promise<`0x${string}`>);
                                                                                              loanLiquidated: ((args, options?) => Promise<`0x${string}`>);
                                                                                              removeWhitelistedCallbackContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                              setProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                                                              updateLiquidationAuctionDuration: ((args, options?) => Promise<`0x${string}`>);
                                                                                              updateLiquidationContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                              updateProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                                                              emitLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                              refinanceFull: ((args, options?) => Promise<`0x${string}`>);
                                                                                              refinancePartial: ((args, options?) => Promise<`0x${string}`>);
                                                                                              repayLoan: ((args, options?) => Promise<`0x${string}`>);
                                                                                              multicall: ((args, options?) => Promise<`0x${string}`>);
                                                                                              delegate: ((args, options?) => Promise<`0x${string}`>);
                                                                                              revokeDelegate: ((args, options?) => Promise<`0x${string}`>);
                                                                                              executeFlashAction: ((args, options?) => Promise<`0x${string}`>);
                                                                                              setFlashActionContract: ((args, options?) => Promise<`0x${string}`>);
                                                                                              setMinLockPeriod: ((args, options?) => Promise<`0x${string}`>);
                                                                                              requestTransferOwner: ((args, options?) => Promise<`0x${string}`>);
                                                                                              updateMinImprovementApr: ((args, options?) => Promise<`0x${string}`>);
                                                                                              addNewTranche: ((args, options?) => Promise<`0x${string}`>);
                                                                                              refinanceFromLoanExecutionData: ((args, options?) => Promise<`0x${string}`>);
                                                                                          }
                                                                                          @@ -1107,7 +1107,7 @@
                                                                                          Optional Returns Promise<`0x${string}`>
                                                                                          +
                                                                                        • Defined in src/contracts/BaseContract.ts:28
                                                                                        • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                                              type: "constructor";
                                                                                              inputs: readonly [{
                                                                                                  name: "loanLiquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "protocolFee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "currencyManager";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "collectionManager";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "maxTranches";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "minLockPeriod";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "delegateRegistry";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "loanManagerRegistry";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "flashActionContract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "minWaitTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "AddressZeroError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "CancelledOrExecutedOfferError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "CollectionNotWhitelistedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "ECDSAInvalidSignature";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "length";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "ECDSAInvalidSignatureLength";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "s";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              name: "ECDSAInvalidSignatureS";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "ExpiredOfferError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidAddressesError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_amount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "InvalidAmountError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidCallbackError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidCallerError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidCollateralIdError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidDurationError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidInputError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "InvalidLoanError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidMethodError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidParametersError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidRenegotiationOfferError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidSignatureError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidTrancheError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_liquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "LiquidatorOnlyError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "LoanExpiredError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "LoanLockedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "LoanNotDueError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_newMinOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "LowOfferIdError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_newMinRenegotiationOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "LowRenegotiationOfferIdError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "MaxCapacityExceededError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "MismatchError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "i";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "returndata";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "MulticallFailed";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "NFTNotReturnedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "NotStrictlyImprovedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_pendingProtocolFeeSetTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "TooEarlyError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "TooManyTranchesError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "TooSoonError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "minTimestamp";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "TrancheCannotBeRefinancedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "ZeroInterestError";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "AllOffersCancelled";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                                  internalType: "uint256";
                                                                                              }, {
                                                                                                  name: "delegate";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                                  internalType: "address";
                                                                                              }, {
                                                                                                  name: "_rights";
                                                                                                  type: "bytes32";
                                                                                                  indexed: false;
                                                                                                  internalType: "bytes32";
                                                                                              }, {
                                                                                                  name: "value";
                                                                                                  type: "bool";
                                                                                                  indexed: false;
                                                                                                  internalType: "bool";
                                                                                              }];
                                                                                              name: "Delegated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newFlashActionContract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "FlashActionContractUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "target";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "data";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "FlashActionExecuted";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newDuration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LiquidationAuctionDurationUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "liquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LiquidationContractUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "offerId";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanEmitted";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanForeclosed";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanLiquidated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "oldLoanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "newLoanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanRefinanced";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "newLoanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "offerIds";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "totalFee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanRefinancedFromNewOffers";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "totalRepayment";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanRepaid";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "liquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanSentToLiquidator";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "_minimum";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "MinAprImprovementUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newMinBid";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "MinBidLiquidationUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "minLockPeriod";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "MinLockPeriodUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "OfferCancelled";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: true;
                                                                                              }, {
                                                                                                  name: "newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: true;
                                                                                              }];
                                                                                              name: "OwnershipTransferred";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "fee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "ProtocolFeePendingUpdate";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "fee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "ProtocolFeeUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "RenegotiationOfferCancelled";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "delegate";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "collection";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "tokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "RevokeDelegate";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "TransferOwnerRequested";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "contractAdded";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "WhitelistedCallbackContractAdded";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "contractRemoved";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "WhitelistedCallbackContractRemoved";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "DOMAIN_SEPARATOR";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "FEE_UPDATE_NOTICE";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MAX_AUCTION_DURATION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MIN_AUCTION_DURATION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MIN_BID_LIQUIDATION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MIN_WAIT_TIME";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "VERSION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationOffer";
                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "renegotiationId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "trancheIndex";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "addNewTranche";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_contract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "addWhitelistedCallbackContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "cancelAllOffers";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "cancelOffer";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "cancelRenegotiationOffer";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_delegate";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_rights";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }, {
                                                                                                  name: "_value";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              name: "delegate";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanExecutionData";
                                                                                                  internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "executionData";
                                                                                                      internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "offerExecution";
                                                                                                          internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "offer";
                                                                                                              internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                                              type: "tuple";
                                                                                                              components: readonly [{
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "capacity";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralTokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "duration";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "maxSeniorRepayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "validators";
                                                                                                                  internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                  type: "tuple[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "validator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "arguments";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "lenderOfferSignature";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "tokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "expirationTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalReceiver";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "callbackData";
                                                                                                          internalType: "bytes";
                                                                                                          type: "bytes";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "borrowerOfferSignature";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "emitLoan";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_target";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_data";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "executeFlashAction";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getCollectionManager";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getCurrencyManager";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getDelegateRegistry";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getFlashActionContract";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getLiquidationAuctionDuration";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getLiquidator";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "getLoanHash";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getLoanManagerRegistry";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "contract ILoanManagerRegistry";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getMaxTranches";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getMinImprovementApr";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getMinLockPeriod";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getPendingProtocolFee";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getPendingProtocolFeeSetTime";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getProtocolFee";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getTotalLoansIssued";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "getUsedCapacity";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "isOfferCancelled";
                                                                                              outputs: readonly [{
                                                                                                  name: "notActive";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "renegotiationIf";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "isRenegotiationOfferCancelled";
                                                                                              outputs: readonly [{
                                                                                                  name: "notActive";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_contract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "isWhitelistedCallbackContract";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "liquidateLoan";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "loanLiquidated";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "minOfferId";
                                                                                              outputs: readonly [{
                                                                                                  name: "minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "data";
                                                                                                  internalType: "bytes[]";
                                                                                                  type: "bytes[]";
                                                                                              }];
                                                                                              name: "multicall";
                                                                                              outputs: readonly [{
                                                                                                  name: "results";
                                                                                                  internalType: "bytes[]";
                                                                                                  type: "bytes[]";
                                                                                              }];
                                                                                              stateMutability: "payable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "name";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "string";
                                                                                                  type: "string";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "onERC721Received";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes4";
                                                                                                  type: "bytes4";
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "owner";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "pendingOwner";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "pendingOwnerTime";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loanExecutionData";
                                                                                                  internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "executionData";
                                                                                                      internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "offerExecution";
                                                                                                          internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "offer";
                                                                                                              internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                                              type: "tuple";
                                                                                                              components: readonly [{
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "capacity";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralTokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "duration";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "maxSeniorRepayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "validators";
                                                                                                                  internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                  type: "tuple[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "validator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "arguments";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "lenderOfferSignature";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "tokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "expirationTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalReceiver";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "callbackData";
                                                                                                          internalType: "bytes";
                                                                                                          type: "bytes";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "borrowerOfferSignature";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "refinanceFromLoanExecutionData";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationOffer";
                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "renegotiationId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "trancheIndex";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "refinanceFull";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationOffer";
                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "renegotiationId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "trancheIndex";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "refinancePartial";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_contract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "removeWhitelistedCallbackContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_repaymentData";
                                                                                                  internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "data";
                                                                                                      internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "callbackData";
                                                                                                          internalType: "bytes";
                                                                                                          type: "bytes";
                                                                                                      }, {
                                                                                                          name: "shouldDelegate";
                                                                                                          internalType: "bool";
                                                                                                          type: "bool";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "loan";
                                                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "borrower";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "nftCollateralTokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "nftCollateralAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "tranche";
                                                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "loanId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "floor";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "lender";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "accruedInterest";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "aprBps";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "protocolFee";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "borrowerSignature";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "repayLoan";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "requestTransferOwner";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_delegate";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_collection";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_tokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "revokeDelegate";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newFlashActionContract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "setFlashActionContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "__minLockPeriod";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "setMinLockPeriod";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "setProtocolFee";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "transferOwnership";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "transferOwnership";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newDuration";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              name: "updateLiquidationAuctionDuration";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "__loanLiquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "updateLiquidationContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newMinimum";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "updateMinImprovementApr";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newProtocolFee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "updateProtocolFee";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "RevokeDelegate" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "MinLockPeriodUpdated" | "MinAprImprovementUpdated" | "MinBidLiquidationUpdated" | "TransferOwnerRequested" | "LoanRefinancedFromNewOffers")[]
                                                                                              ? TFunctionName[number]
                                                                                              : TFunctionName>)
                                                                                          @@ -1133,7 +1133,7 @@
                                                                                          logs: Returns ParseEventLogsReturnType<readonly [{
                                                                                              type: "constructor";
                                                                                              inputs: readonly [{
                                                                                                  name: "loanLiquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "protocolFee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "currencyManager";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "collectionManager";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "maxTranches";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "minLockPeriod";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "delegateRegistry";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "loanManagerRegistry";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "flashActionContract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "minWaitTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "AddressZeroError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "CancelledOrExecutedOfferError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "CollectionNotWhitelistedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "ECDSAInvalidSignature";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "length";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "ECDSAInvalidSignatureLength";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "s";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              name: "ECDSAInvalidSignatureS";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "ExpiredOfferError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidAddressesError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_amount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_principalAmount";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "InvalidAmountError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidCallbackError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidCallerError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidCollateralIdError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidDurationError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidInputError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "InvalidLoanError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidMethodError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidParametersError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidRenegotiationOfferError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidSignatureError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "InvalidTrancheError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_liquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "LiquidatorOnlyError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "LoanExpiredError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "LoanLockedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_expirationTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "LoanNotDueError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_newMinOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "LowOfferIdError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_newMinRenegotiationOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "LowRenegotiationOfferIdError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "MaxCapacityExceededError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "MismatchError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "i";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "returndata";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "MulticallFailed";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "NFTNotReturnedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "NotStrictlyImprovedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "_pendingProtocolFeeSetTime";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "TooEarlyError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "TooManyTranchesError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "TooSoonError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [{
                                                                                                  name: "minTimestamp";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "TrancheCannotBeRefinancedError";
                                                                                          }, {
                                                                                              type: "error";
                                                                                              inputs: readonly [];
                                                                                              name: "ZeroInterestError";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "AllOffersCancelled";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                                  internalType: "uint256";
                                                                                              }, {
                                                                                                  name: "delegate";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                                  internalType: "address";
                                                                                              }, {
                                                                                                  name: "_rights";
                                                                                                  type: "bytes32";
                                                                                                  indexed: false;
                                                                                                  internalType: "bytes32";
                                                                                              }, {
                                                                                                  name: "value";
                                                                                                  type: "bool";
                                                                                                  indexed: false;
                                                                                                  internalType: "bool";
                                                                                              }];
                                                                                              name: "Delegated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newFlashActionContract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "FlashActionContractUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "target";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "data";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "FlashActionExecuted";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newDuration";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LiquidationAuctionDurationUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "liquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LiquidationContractUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "offerId";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanEmitted";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanForeclosed";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanLiquidated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "oldLoanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "newLoanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanRefinanced";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "newLoanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "offerIds";
                                                                                                  internalType: "uint256[]";
                                                                                                  type: "uint256[]";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "totalFee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanRefinancedFromNewOffers";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "totalRepayment";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "fee";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanRepaid";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "liquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "LoanSentToLiquidator";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "_minimum";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "MinAprImprovementUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newMinBid";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "MinBidLiquidationUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "minLockPeriod";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "MinLockPeriodUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "OfferCancelled";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: true;
                                                                                              }, {
                                                                                                  name: "newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: true;
                                                                                              }];
                                                                                              name: "OwnershipTransferred";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "fee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "ProtocolFeePendingUpdate";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "fee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "ProtocolFeeUpdated";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "RenegotiationOfferCancelled";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "delegate";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "collection";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }, {
                                                                                                  name: "tokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "RevokeDelegate";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "TransferOwnerRequested";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "contractAdded";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "WhitelistedCallbackContractAdded";
                                                                                          }, {
                                                                                              type: "event";
                                                                                              anonymous: false;
                                                                                              inputs: readonly [{
                                                                                                  name: "contractRemoved";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                                  indexed: false;
                                                                                              }];
                                                                                              name: "WhitelistedCallbackContractRemoved";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "DOMAIN_SEPARATOR";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "FEE_UPDATE_NOTICE";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MAX_AUCTION_DURATION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MIN_AUCTION_DURATION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MIN_BID_LIQUIDATION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "MIN_WAIT_TIME";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "VERSION";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationOffer";
                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "renegotiationId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "trancheIndex";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "addNewTranche";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_contract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "addWhitelistedCallbackContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "cancelAllOffers";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "cancelOffer";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "cancelRenegotiationOffer";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_delegate";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_rights";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }, {
                                                                                                  name: "_value";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              name: "delegate";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanExecutionData";
                                                                                                  internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "executionData";
                                                                                                      internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "offerExecution";
                                                                                                          internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "offer";
                                                                                                              internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                                              type: "tuple";
                                                                                                              components: readonly [{
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "capacity";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralTokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "duration";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "maxSeniorRepayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "validators";
                                                                                                                  internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                  type: "tuple[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "validator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "arguments";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "lenderOfferSignature";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "tokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "expirationTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalReceiver";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "callbackData";
                                                                                                          internalType: "bytes";
                                                                                                          type: "bytes";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "borrowerOfferSignature";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "emitLoan";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_target";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_data";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "executeFlashAction";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getCollectionManager";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getCurrencyManager";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getDelegateRegistry";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getFlashActionContract";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getLiquidationAuctionDuration";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getLiquidator";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "getLoanHash";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes32";
                                                                                                  type: "bytes32";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getLoanManagerRegistry";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "contract ILoanManagerRegistry";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getMaxTranches";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getMinImprovementApr";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getMinLockPeriod";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getPendingProtocolFee";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getPendingProtocolFeeSetTime";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getProtocolFee";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "getTotalLoansIssued";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_lender";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "getUsedCapacity";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "offerId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "isOfferCancelled";
                                                                                              outputs: readonly [{
                                                                                                  name: "notActive";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "renegotiationIf";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "isRenegotiationOfferCancelled";
                                                                                              outputs: readonly [{
                                                                                                  name: "notActive";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_contract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "isWhitelistedCallbackContract";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bool";
                                                                                                  type: "bool";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "liquidateLoan";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "loanLiquidated";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "user";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "minOfferId";
                                                                                              outputs: readonly [{
                                                                                                  name: "minOfferId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "data";
                                                                                                  internalType: "bytes[]";
                                                                                                  type: "bytes[]";
                                                                                              }];
                                                                                              name: "multicall";
                                                                                              outputs: readonly [{
                                                                                                  name: "results";
                                                                                                  internalType: "bytes[]";
                                                                                                  type: "bytes[]";
                                                                                              }];
                                                                                              stateMutability: "payable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "name";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "string";
                                                                                                  type: "string";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "onERC721Received";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "bytes4";
                                                                                                  type: "bytes4";
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "owner";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "pendingOwner";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "pendingOwnerTime";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              stateMutability: "view";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_loanId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loanExecutionData";
                                                                                                  internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "executionData";
                                                                                                      internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "offerExecution";
                                                                                                          internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "offer";
                                                                                                              internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                                              type: "tuple";
                                                                                                              components: readonly [{
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "capacity";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "nftCollateralTokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "duration";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "maxSeniorRepayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "validators";
                                                                                                                  internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                  type: "tuple[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "validator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "arguments";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "lenderOfferSignature";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "tokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "expirationTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalReceiver";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "callbackData";
                                                                                                          internalType: "bytes";
                                                                                                          type: "bytes";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "borrowerOfferSignature";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "refinanceFromLoanExecutionData";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationOffer";
                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "renegotiationId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "trancheIndex";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                  internalType: "bytes";
                                                                                                  type: "bytes";
                                                                                              }];
                                                                                              name: "refinanceFull";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_renegotiationOffer";
                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "renegotiationId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "loanId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "lender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "trancheIndex";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "aprBps";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "expirationTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "_loan";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "refinancePartial";
                                                                                              outputs: readonly [{
                                                                                                  name: "";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }, {
                                                                                                  name: "";
                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "borrower";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "nftCollateralTokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "nftCollateralAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAddress";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "principalAmount";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "startTime";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "duration";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "tranche";
                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                      type: "tuple[]";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "floor";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "lender";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "accruedInterest";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "aprBps";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "protocolFee";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_contract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "removeWhitelistedCallbackContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_repaymentData";
                                                                                                  internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "data";
                                                                                                      internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "loanId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "callbackData";
                                                                                                          internalType: "bytes";
                                                                                                          type: "bytes";
                                                                                                      }, {
                                                                                                          name: "shouldDelegate";
                                                                                                          internalType: "bool";
                                                                                                          type: "bool";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "loan";
                                                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                                                      type: "tuple";
                                                                                                      components: readonly [{
                                                                                                          name: "borrower";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "nftCollateralTokenId";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "nftCollateralAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAddress";
                                                                                                          internalType: "address";
                                                                                                          type: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }, {
                                                                                                          name: "tranche";
                                                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                          type: "tuple[]";
                                                                                                          components: readonly [{
                                                                                                              name: "loanId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "floor";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "lender";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "accruedInterest";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "aprBps";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "protocolFee";
                                                                                                          internalType: "uint256";
                                                                                                          type: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "borrowerSignature";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "repayLoan";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "requestTransferOwner";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_delegate";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_collection";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }, {
                                                                                                  name: "_tokenId";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "revokeDelegate";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newFlashActionContract";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "setFlashActionContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "__minLockPeriod";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "setMinLockPeriod";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "setProtocolFee";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [];
                                                                                              name: "transferOwnership";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "newOwner";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "transferOwnership";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newDuration";
                                                                                                  internalType: "uint48";
                                                                                                  type: "uint48";
                                                                                              }];
                                                                                              name: "updateLiquidationAuctionDuration";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "__loanLiquidator";
                                                                                                  internalType: "address";
                                                                                                  type: "address";
                                                                                              }];
                                                                                              name: "updateLiquidationContract";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newMinimum";
                                                                                                  internalType: "uint256";
                                                                                                  type: "uint256";
                                                                                              }];
                                                                                              name: "updateMinImprovementApr";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }, {
                                                                                              type: "function";
                                                                                              inputs: readonly [{
                                                                                                  name: "_newProtocolFee";
                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "recipient";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "fraction";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }];
                                                                                              name: "updateProtocolFee";
                                                                                              outputs: readonly [];
                                                                                              stateMutability: "nonpayable";
                                                                                          }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "AllOffersCancelled" | "LiquidationAuctionDurationUpdated" | "LiquidationContractUpdated" | "LoanForeclosed" | "LoanLiquidated" | "LoanSentToLiquidator" | "OfferCancelled" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "RenegotiationOfferCancelled" | "WhitelistedCallbackContractAdded" | "WhitelistedCallbackContractRemoved" | "LoanEmitted" | "LoanRefinanced" | "LoanRepaid" | "RevokeDelegate" | "Delegated" | "FlashActionContractUpdated" | "FlashActionExecuted" | "MinLockPeriodUpdated" | "MinAprImprovementUpdated" | "MinBidLiquidationUpdated" | "TransferOwnerRequested" | "LoanRefinancedFromNewOffers")[]
                                                                                              ? TFunctionName[number]
                                                                                              : TFunctionName>
                                                                                          +
                                                                                        • Defined in src/contracts/BaseContract.ts:35
                                                                                        • @@ -23,7 +23,7 @@

                                                                                          Hierarchy

                                                                                          • OldERC721Wrapper
                                                                                          +
                                                                                        • Defined in src/contracts/OldERC721Wrapper.ts:7
                                                                                        • @@ -70,7 +70,7 @@
                                                                                          contractAddressReturns OldERC721Wrapper
                                                                                          +
                                                                                        • Defined in src/contracts/OldERC721Wrapper.ts:8
                                                                                        • Methods

                                                                                          @@ -88,7 +88,7 @@
                                                                                          __namedParameters: tokenId: bigint

                                                                                          Returns Promise<{
                                                                                              txHash: `0x${string}`;
                                                                                              waitMined: (() => Promise<TransactionReceipt>);
                                                                                          }>

                                                                                          +
                                                                                        • Defined in src/contracts/OldERC721Wrapper.ts:22
                                                                                          • @@ -101,7 +101,7 @@

                                                                                            Parameters

                                                                                            tokenId: bigint

                                                                                          Returns Promise<{
                                                                                              txHash: `0x${string}`;
                                                                                              waitMined: (() => Promise<TransactionReceipt>);
                                                                                          }>

                                                                                          +
                                                                                        • Defined in src/contracts/OldERC721Wrapper.ts:31
                                                                                        • +
                                                                                        • Defined in src/contracts/BaseContract.ts:93
                                                                                        • Properties

                                                                                          @@ -123,13 +123,13 @@
                                                                                          +
                                                                                        • Defined in src/contracts/BaseContract.ts:22
                                                                                        • address: `0x${string}`
                                                                                          +
                                                                                        • Defined in src/contracts/BaseContract.ts:23
                                                                                        • bcClient: {}
                                                                                          @@ -138,7 +138,7 @@

                                                                                          Type declaration

                                                                                            +
                                                                                          • Defined in src/contracts/BaseContract.ts:24
                                                                                          • wallet: {}
                                                                                            @@ -147,13 +147,13 @@

                                                                                            Type declaration

                                                                                              +
                                                                                            • Defined in src/contracts/BaseContract.ts:25
                                                                                            • contract: GetContractReturnType<readonly [{
                                                                                                  type: "constructor";
                                                                                                  inputs: readonly [{
                                                                                                      name: "name";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }, {
                                                                                                      name: "symbol";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }, {
                                                                                                      name: "_wrapped";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "spender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "approve";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "balanceOf";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "getApproved";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "isApprovedForAll";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "name";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "ownerOf";
                                                                                                  outputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "safeTransferFrom";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "data";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                                  name: "safeTransferFrom";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "operator";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "approved";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                                  name: "setApprovalForAll";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "user";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "stashAddress";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "stashFactory";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "contract Stash";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "interfaceId";
                                                                                                      internalType: "bytes4";
                                                                                                      type: "bytes4";
                                                                                                  }];
                                                                                                  name: "supportsInterface";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "symbol";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "tokenURI";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "tokensOfOwner";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "totalSupply";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "transferFrom";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "unwrap";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenIndexes";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }];
                                                                                                  name: "unwrapBatch";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "wrap";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenIndexes";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }];
                                                                                                  name: "wrapBatch";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "wrapped";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "contract IOldERC721";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  anonymous: false;
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "spender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                      indexed: true;
                                                                                                  }];
                                                                                                  name: "Approval";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  anonymous: false;
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "operator";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "approved";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                      indexed: false;
                                                                                                  }];
                                                                                                  name: "ApprovalForAll";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  anonymous: false;
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                      indexed: true;
                                                                                                  }];
                                                                                                  name: "Transfer";
                                                                                              }], {} | {}>
                                                                                              +
                                                                                            • Defined in src/contracts/BaseContract.ts:26
                                                                                            • safeContractWrite: {
                                                                                                  approve: ((args, options?) => Promise<`0x${string}`>);
                                                                                                  transferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                                                                  safeTransferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                                                                  setApprovalForAll: ((args, options?) => Promise<`0x${string}`>);
                                                                                                  unwrap: ((args, options?) => Promise<`0x${string}`>);
                                                                                                  unwrapBatch: ((args, options?) => Promise<`0x${string}`>);
                                                                                                  wrap: ((args, options?) => Promise<`0x${string}`>);
                                                                                                  wrapBatch: ((args, options?) => Promise<`0x${string}`>);
                                                                                              }
                                                                                              @@ -306,7 +306,7 @@
                                                                                              Optional Returns Promise<`0x${string}`>
                                                                                              +
                                                                                            • Defined in src/contracts/BaseContract.ts:28
                                                                                            • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                                                  type: "constructor";
                                                                                                  inputs: readonly [{
                                                                                                      name: "name";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }, {
                                                                                                      name: "symbol";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }, {
                                                                                                      name: "_wrapped";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "spender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "approve";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "balanceOf";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "getApproved";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "isApprovedForAll";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "name";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "ownerOf";
                                                                                                  outputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "safeTransferFrom";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "data";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                                  name: "safeTransferFrom";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "operator";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "approved";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                                  name: "setApprovalForAll";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "user";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "stashAddress";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "stashFactory";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "contract Stash";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "interfaceId";
                                                                                                      internalType: "bytes4";
                                                                                                      type: "bytes4";
                                                                                                  }];
                                                                                                  name: "supportsInterface";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "symbol";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "tokenURI";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "tokensOfOwner";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "totalSupply";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "transferFrom";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "unwrap";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenIndexes";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }];
                                                                                                  name: "unwrapBatch";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "wrap";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenIndexes";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }];
                                                                                                  name: "wrapBatch";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "wrapped";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "contract IOldERC721";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  anonymous: false;
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "spender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                      indexed: true;
                                                                                                  }];
                                                                                                  name: "Approval";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  anonymous: false;
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "operator";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "approved";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                      indexed: false;
                                                                                                  }];
                                                                                                  name: "ApprovalForAll";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  anonymous: false;
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                      indexed: true;
                                                                                                  }];
                                                                                                  name: "Transfer";
                                                                                              }], TFunctionName, true, TFunctionName extends ("Approval" | "Transfer" | "ApprovalForAll")[]
                                                                                                  ? TFunctionName[number]
                                                                                                  : TFunctionName>)
                                                                                              @@ -332,7 +332,7 @@
                                                                                              logs: Returns ParseEventLogsReturnType<readonly [{
                                                                                                  type: "constructor";
                                                                                                  inputs: readonly [{
                                                                                                      name: "name";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }, {
                                                                                                      name: "symbol";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }, {
                                                                                                      name: "_wrapped";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "spender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "approve";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "balanceOf";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "getApproved";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "isApprovedForAll";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "name";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "ownerOf";
                                                                                                  outputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "safeTransferFrom";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }, {
                                                                                                      name: "data";
                                                                                                      internalType: "bytes";
                                                                                                      type: "bytes";
                                                                                                  }];
                                                                                                  name: "safeTransferFrom";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "operator";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "approved";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                                  name: "setApprovalForAll";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "user";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "stashAddress";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "stashFactory";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "contract Stash";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "interfaceId";
                                                                                                      internalType: "bytes4";
                                                                                                      type: "bytes4";
                                                                                                  }];
                                                                                                  name: "supportsInterface";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "symbol";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "tokenURI";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "string";
                                                                                                      type: "string";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  name: "tokensOfOwner";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "totalSupply";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "transferFrom";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "unwrap";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenIndexes";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }];
                                                                                                  name: "unwrapBatch";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenId";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                                  name: "wrap";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [{
                                                                                                      name: "tokenIndexes";
                                                                                                      internalType: "uint256[]";
                                                                                                      type: "uint256[]";
                                                                                                  }];
                                                                                                  name: "wrapBatch";
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  inputs: readonly [];
                                                                                                  name: "wrapped";
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      internalType: "contract IOldERC721";
                                                                                                      type: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  anonymous: false;
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "spender";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                      indexed: true;
                                                                                                  }];
                                                                                                  name: "Approval";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  anonymous: false;
                                                                                                  inputs: readonly [{
                                                                                                      name: "owner";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "operator";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "approved";
                                                                                                      internalType: "bool";
                                                                                                      type: "bool";
                                                                                                      indexed: false;
                                                                                                  }];
                                                                                                  name: "ApprovalForAll";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  anonymous: false;
                                                                                                  inputs: readonly [{
                                                                                                      name: "from";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "to";
                                                                                                      internalType: "address";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                  }, {
                                                                                                      name: "id";
                                                                                                      internalType: "uint256";
                                                                                                      type: "uint256";
                                                                                                      indexed: true;
                                                                                                  }];
                                                                                                  name: "Transfer";
                                                                                              }], TFunctionName, true, TFunctionName extends ("Approval" | "Transfer" | "ApprovalForAll")[]
                                                                                                  ? TFunctionName[number]
                                                                                                  : TFunctionName>
                                                                                              +
                                                                                            • Defined in src/contracts/BaseContract.ts:35
                                                                                            • @@ -23,7 +23,7 @@

                                                                                              Hierarchy

                                                                                              • PurchaseBundler
                                                                                              +
                                                                                            • Defined in src/contracts/PurchaseBundler.ts:10
                                                                                            • @@ -73,7 +73,7 @@
                                                                                              walletClientReturns PurchaseBundler
                                                                                              +
                                                                                            • Defined in src/contracts/PurchaseBundler.ts:13
                                                                                            • Methods

                                                                                              @@ -93,7 +93,7 @@
                                                                                              repaymentCalldataprice: bigint

                                                                                              Returns Promise<{
                                                                                                  txHash: `0x${string}`;
                                                                                                  waitTxInBlock: (() => Promise<TransactionReceipt>);
                                                                                              }>

                                                                                              +
                                                                                            • Defined in src/contracts/PurchaseBundler.ts:47
                                                                                            • +
                                                                                            • Defined in src/contracts/BaseContract.ts:93
                                                                                            • Properties

                                                                                              @@ -123,24 +123,24 @@
                                                                                              Readonly
                                                                                              Readonly components: readonly [{
                                                                                                  name: "reservoirExecutionInfo";
                                                                                                  type: "tuple";
                                                                                                  components: readonly [{
                                                                                                      name: "module";
                                                                                                      type: "address";
                                                                                                  }, {
                                                                                                      name: "data";
                                                                                                      type: "bytes";
                                                                                                  }, {
                                                                                                      name: "value";
                                                                                                      type: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  name: "contractMustBeOwner";
                                                                                                  type: "bool";
                                                                                              }]
                                                                                              +
                                                                                            • Defined in src/contracts/PurchaseBundler.ts:30
                                                                                            • msl: MslV6 | MslV5
                                                                                              +
                                                                                            • Defined in src/contracts/PurchaseBundler.ts:11
                                                                                            • abi: readonly [{
                                                                                                  type: "constructor";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_multiSourceLoanAddress";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }, {
                                                                                                      name: "_marketplaceContracts";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }, {
                                                                                                      name: "_wethAddress";
                                                                                                      type: "address";
                                                                                                      internalType: "address payable";
                                                                                                  }, {
                                                                                                      name: "_punkMarketAddress";
                                                                                                      type: "address";
                                                                                                      internalType: "address payable";
                                                                                                  }, {
                                                                                                      name: "_wrappedPunkAddress";
                                                                                                      type: "address";
                                                                                                      internalType: "address payable";
                                                                                                  }, {
                                                                                                      name: "__taxes";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                                                      components: readonly [{
                                                                                                          name: "buyTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }, {
                                                                                                          name: "sellTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "_minWaitTime";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }, {
                                                                                                      name: "__protocolFee";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                      components: readonly [{
                                                                                                          name: "recipient";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "fraction";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "fallback";
                                                                                                  stateMutability: "payable";
                                                                                              }, {
                                                                                                  type: "receive";
                                                                                                  stateMutability: "payable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "FEE_UPDATE_NOTICE";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "MIN_WAIT_TIME";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "TAX_UPDATE_NOTICE";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "afterNFTTransfer";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_loan";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                                                      components: readonly [{
                                                                                                          name: "borrower";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "nftCollateralTokenId";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "nftCollateralAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "principalAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "tranche";
                                                                                                          type: "tuple[]";
                                                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                          components: readonly [{
                                                                                                              name: "loanId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "floor";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "lender";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "accruedInterest";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "aprBps";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "protocolFee";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "_executionData";
                                                                                                      type: "bytes";
                                                                                                      internalType: "bytes";
                                                                                                  }];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "bytes4";
                                                                                                      internalType: "bytes4";
                                                                                                  }];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "afterPrincipalTransfer";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_loan";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                                                      components: readonly [{
                                                                                                          name: "borrower";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "nftCollateralTokenId";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "nftCollateralAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "principalAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "tranche";
                                                                                                          type: "tuple[]";
                                                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                          components: readonly [{
                                                                                                              name: "loanId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "floor";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "lender";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "accruedInterest";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "aprBps";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "protocolFee";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      name: "_fee";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }, {
                                                                                                      name: "_executionData";
                                                                                                      type: "bytes";
                                                                                                      internalType: "bytes";
                                                                                                  }];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "bytes4";
                                                                                                      internalType: "bytes4";
                                                                                                  }];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "buy";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_executionData";
                                                                                                      type: "bytes[]";
                                                                                                      internalType: "bytes[]";
                                                                                                  }];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "uint256[]";
                                                                                                      internalType: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "";
                                                                                                      type: "tuple[]";
                                                                                                      internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                                      components: readonly [{
                                                                                                          name: "borrower";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "nftCollateralTokenId";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "nftCollateralAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "principalAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "principalAmount";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "startTime";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "duration";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "tranche";
                                                                                                          type: "tuple[]";
                                                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                          components: readonly [{
                                                                                                              name: "loanId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "floor";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "lender";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "accruedInterest";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "aprBps";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "protocolFee";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                                  stateMutability: "payable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "executeSell";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_currencies";
                                                                                                      type: "address[]";
                                                                                                      internalType: "contract ERC20[]";
                                                                                                  }, {
                                                                                                      name: "_currencyAmounts";
                                                                                                      type: "uint256[]";
                                                                                                      internalType: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "_collections";
                                                                                                      type: "address[]";
                                                                                                      internalType: "contract ERC721[]";
                                                                                                  }, {
                                                                                                      name: "_tokenIds";
                                                                                                      type: "uint256[]";
                                                                                                      internalType: "uint256[]";
                                                                                                  }, {
                                                                                                      name: "_marketPlace";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }, {
                                                                                                      name: "_executionData";
                                                                                                      type: "bytes[]";
                                                                                                      internalType: "bytes[]";
                                                                                                  }];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "finalUpdateMultiSourceLoanAddress";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_newAddress";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "getMultiSourceLoanAddress";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "getPendingProtocolFee";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                      components: readonly [{
                                                                                                          name: "recipient";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "fraction";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "getPendingProtocolFeeSetTime";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "getPendingTaxes";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                                                      components: readonly [{
                                                                                                          name: "buyTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }, {
                                                                                                          name: "sellTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }];
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "getPendingTaxesSetTime";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "getProtocolFee";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                      components: readonly [{
                                                                                                          name: "recipient";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "fraction";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "getTaxes";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                                                      components: readonly [{
                                                                                                          name: "buyTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }, {
                                                                                                          name: "sellTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }];
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "onERC721Received";
                                                                                                  inputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }, {
                                                                                                      name: "";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }, {
                                                                                                      name: "";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }, {
                                                                                                      name: "";
                                                                                                      type: "bytes";
                                                                                                      internalType: "bytes";
                                                                                                  }];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "bytes4";
                                                                                                      internalType: "bytes4";
                                                                                                  }];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "owner";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "pendingOwner";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "pendingOwnerTime";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [{
                                                                                                      name: "";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }];
                                                                                                  stateMutability: "view";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "requestTransferOwner";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_newOwner";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "sell";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_executionData";
                                                                                                      type: "bytes[]";
                                                                                                      internalType: "bytes[]";
                                                                                                  }];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "setProtocolFee";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "setTaxes";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "transferOwnership";
                                                                                                  inputs: readonly [];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "transferOwnership";
                                                                                                  inputs: readonly [{
                                                                                                      name: "newOwner";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "updateMultiSourceLoanAddressFirst";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_newAddress";
                                                                                                      type: "address";
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "updateProtocolFee";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_newProtocolFee";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                      components: readonly [{
                                                                                                          name: "recipient";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "fraction";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "function";
                                                                                                  name: "updateTaxes";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_newTaxes";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                                                      components: readonly [{
                                                                                                          name: "buyTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }, {
                                                                                                          name: "sellTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }];
                                                                                                  }];
                                                                                                  outputs: readonly [];
                                                                                                  stateMutability: "nonpayable";
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "BNPLLoansStarted";
                                                                                                  inputs: readonly [{
                                                                                                      name: "loanIds";
                                                                                                      type: "uint256[]";
                                                                                                      indexed: false;
                                                                                                      internalType: "uint256[]";
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "MultiSourceLoanPendingUpdate";
                                                                                                  inputs: readonly [{
                                                                                                      name: "newAddress";
                                                                                                      type: "address";
                                                                                                      indexed: false;
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "MultiSourceLoanUpdated";
                                                                                                  inputs: readonly [{
                                                                                                      name: "newAddress";
                                                                                                      type: "address";
                                                                                                      indexed: false;
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "OwnershipTransferred";
                                                                                                  inputs: readonly [{
                                                                                                      name: "user";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                      internalType: "address";
                                                                                                  }, {
                                                                                                      name: "newOwner";
                                                                                                      type: "address";
                                                                                                      indexed: true;
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "ProtocolFeePendingUpdate";
                                                                                                  inputs: readonly [{
                                                                                                      name: "fee";
                                                                                                      type: "tuple";
                                                                                                      indexed: false;
                                                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                      components: readonly [{
                                                                                                          name: "recipient";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "fraction";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "ProtocolFeeUpdated";
                                                                                                  inputs: readonly [{
                                                                                                      name: "fee";
                                                                                                      type: "tuple";
                                                                                                      indexed: false;
                                                                                                      internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                      components: readonly [{
                                                                                                          name: "recipient";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "fraction";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "SellAndRepayExecuted";
                                                                                                  inputs: readonly [{
                                                                                                      name: "loanIds";
                                                                                                      type: "uint256[]";
                                                                                                      indexed: false;
                                                                                                      internalType: "uint256[]";
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "TaxesPendingUpdate";
                                                                                                  inputs: readonly [{
                                                                                                      name: "newTaxes";
                                                                                                      type: "tuple";
                                                                                                      indexed: false;
                                                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                                                      components: readonly [{
                                                                                                          name: "buyTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }, {
                                                                                                          name: "sellTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }];
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "TaxesUpdated";
                                                                                                  inputs: readonly [{
                                                                                                      name: "taxes";
                                                                                                      type: "tuple";
                                                                                                      indexed: false;
                                                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                                                      components: readonly [{
                                                                                                          name: "buyTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }, {
                                                                                                          name: "sellTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }];
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "event";
                                                                                                  name: "TransferOwnerRequested";
                                                                                                  inputs: readonly [{
                                                                                                      name: "newOwner";
                                                                                                      type: "address";
                                                                                                      indexed: false;
                                                                                                      internalType: "address";
                                                                                                  }];
                                                                                                  anonymous: false;
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "AddressZeroError";
                                                                                                  inputs: readonly [];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "CouldNotReturnEthError";
                                                                                                  inputs: readonly [];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "InvalidAddressUpdateError";
                                                                                                  inputs: readonly [];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "InvalidCallbackError";
                                                                                                  inputs: readonly [];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "InvalidInputError";
                                                                                                  inputs: readonly [];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "InvalidTaxesError";
                                                                                                  inputs: readonly [{
                                                                                                      name: "newTaxes";
                                                                                                      type: "tuple";
                                                                                                      internalType: "struct IPurchaseBundler.Taxes";
                                                                                                      components: readonly [{
                                                                                                          name: "buyTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }, {
                                                                                                          name: "sellTax";
                                                                                                          type: "uint128";
                                                                                                          internalType: "uint128";
                                                                                                      }];
                                                                                                  }];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "MarketplaceAddressNotWhitelisted";
                                                                                                  inputs: readonly [];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "OnlyLoanCallableError";
                                                                                                  inputs: readonly [];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "OnlyWethSupportedError";
                                                                                                  inputs: readonly [];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "TooEarlyError";
                                                                                                  inputs: readonly [{
                                                                                                      name: "_pendingProtocolFeeSetTime";
                                                                                                      type: "uint256";
                                                                                                      internalType: "uint256";
                                                                                                  }];
                                                                                              }, {
                                                                                                  type: "error";
                                                                                                  name: "TooSoonError";
                                                                                                  inputs: readonly [];
                                                                                              }]
                                                                                              +
                                                                                            • Defined in src/contracts/BaseContract.ts:22
                                                                                            • address: `0x${string}`
                                                                                              +
                                                                                            • Defined in src/contracts/BaseContract.ts:23
                                                                                            • bcClient: {}
                                                                                              @@ -149,7 +149,7 @@

                                                                                              Type declaration

                                                                                                +
                                                                                              • Defined in src/contracts/BaseContract.ts:24
                                                                                              • wallet: {}
                                                                                                @@ -158,13 +158,13 @@

                                                                                                Type declaration

                                                                                                  +
                                                                                                • Defined in src/contracts/BaseContract.ts:25
                                                                                                • contract: GetContractReturnType<readonly [{
                                                                                                      type: "constructor";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_multiSourceLoanAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "_marketplaceContracts";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "_wethAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address payable";
                                                                                                      }, {
                                                                                                          name: "_punkMarketAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address payable";
                                                                                                      }, {
                                                                                                          name: "_wrappedPunkAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address payable";
                                                                                                      }, {
                                                                                                          name: "__taxes";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "_minWaitTime";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "__protocolFee";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "fallback";
                                                                                                      stateMutability: "payable";
                                                                                                  }, {
                                                                                                      type: "receive";
                                                                                                      stateMutability: "payable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "FEE_UPDATE_NOTICE";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "MIN_WAIT_TIME";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "TAX_UPDATE_NOTICE";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "afterNFTTransfer";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_loan";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                                          components: readonly [{
                                                                                                              name: "borrower";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "nftCollateralTokenId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "nftCollateralAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "duration";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "tranche";
                                                                                                              type: "tuple[]";
                                                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                              components: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "floor";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "accruedInterest";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "startTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "protocolFee";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes";
                                                                                                          internalType: "bytes";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "bytes4";
                                                                                                          internalType: "bytes4";
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "afterPrincipalTransfer";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_loan";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                                          components: readonly [{
                                                                                                              name: "borrower";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "nftCollateralTokenId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "nftCollateralAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "duration";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "tranche";
                                                                                                              type: "tuple[]";
                                                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                              components: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "floor";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "accruedInterest";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "startTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "protocolFee";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "_fee";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes";
                                                                                                          internalType: "bytes";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "bytes4";
                                                                                                          internalType: "bytes4";
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "buy";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes[]";
                                                                                                          internalType: "bytes[]";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256[]";
                                                                                                          internalType: "uint256[]";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "tuple[]";
                                                                                                          internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                                          components: readonly [{
                                                                                                              name: "borrower";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "nftCollateralTokenId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "nftCollateralAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "duration";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "tranche";
                                                                                                              type: "tuple[]";
                                                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                              components: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "floor";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "accruedInterest";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "startTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "protocolFee";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "payable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "executeSell";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_currencies";
                                                                                                          type: "address[]";
                                                                                                          internalType: "contract ERC20[]";
                                                                                                      }, {
                                                                                                          name: "_currencyAmounts";
                                                                                                          type: "uint256[]";
                                                                                                          internalType: "uint256[]";
                                                                                                      }, {
                                                                                                          name: "_collections";
                                                                                                          type: "address[]";
                                                                                                          internalType: "contract ERC721[]";
                                                                                                      }, {
                                                                                                          name: "_tokenIds";
                                                                                                          type: "uint256[]";
                                                                                                          internalType: "uint256[]";
                                                                                                      }, {
                                                                                                          name: "_marketPlace";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes[]";
                                                                                                          internalType: "bytes[]";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "finalUpdateMultiSourceLoanAddress";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getMultiSourceLoanAddress";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingProtocolFee";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingProtocolFeeSetTime";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingTaxes";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingTaxesSetTime";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getProtocolFee";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getTaxes";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "onERC721Received";
                                                                                                      inputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "bytes";
                                                                                                          internalType: "bytes";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "bytes4";
                                                                                                          internalType: "bytes4";
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "owner";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "pendingOwner";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "pendingOwnerTime";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "requestTransferOwner";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newOwner";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "sell";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes[]";
                                                                                                          internalType: "bytes[]";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "setProtocolFee";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "setTaxes";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "transferOwnership";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "transferOwnership";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newOwner";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "updateMultiSourceLoanAddressFirst";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "updateProtocolFee";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newProtocolFee";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "updateTaxes";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newTaxes";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "BNPLLoansStarted";
                                                                                                      inputs: readonly [{
                                                                                                          name: "loanIds";
                                                                                                          type: "uint256[]";
                                                                                                          indexed: false;
                                                                                                          internalType: "uint256[]";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "MultiSourceLoanPendingUpdate";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newAddress";
                                                                                                          type: "address";
                                                                                                          indexed: false;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "MultiSourceLoanUpdated";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newAddress";
                                                                                                          type: "address";
                                                                                                          indexed: false;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "OwnershipTransferred";
                                                                                                      inputs: readonly [{
                                                                                                          name: "user";
                                                                                                          type: "address";
                                                                                                          indexed: true;
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "newOwner";
                                                                                                          type: "address";
                                                                                                          indexed: true;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "ProtocolFeePendingUpdate";
                                                                                                      inputs: readonly [{
                                                                                                          name: "fee";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "ProtocolFeeUpdated";
                                                                                                      inputs: readonly [{
                                                                                                          name: "fee";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "SellAndRepayExecuted";
                                                                                                      inputs: readonly [{
                                                                                                          name: "loanIds";
                                                                                                          type: "uint256[]";
                                                                                                          indexed: false;
                                                                                                          internalType: "uint256[]";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "TaxesPendingUpdate";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newTaxes";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "TaxesUpdated";
                                                                                                      inputs: readonly [{
                                                                                                          name: "taxes";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "TransferOwnerRequested";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newOwner";
                                                                                                          type: "address";
                                                                                                          indexed: false;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "AddressZeroError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "CouldNotReturnEthError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidAddressUpdateError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidCallbackError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidInputError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidTaxesError";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newTaxes";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "MarketplaceAddressNotWhitelisted";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "OnlyLoanCallableError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "OnlyWethSupportedError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "TooEarlyError";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_pendingProtocolFeeSetTime";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "TooSoonError";
                                                                                                      inputs: readonly [];
                                                                                                  }], {} | {}>
                                                                                                  +
                                                                                                • Defined in src/contracts/BaseContract.ts:26
                                                                                                • safeContractWrite: {
                                                                                                      transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      setProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      updateProtocolFee: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      afterNFTTransfer: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      afterPrincipalTransfer: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      buy: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      finalUpdateMultiSourceLoanAddress: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      sell: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      updateMultiSourceLoanAddressFirst: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      requestTransferOwner: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      executeSell: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      setTaxes: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      updateTaxes: ((args, options?) => Promise<`0x${string}`>);
                                                                                                  }
                                                                                                  @@ -425,7 +425,7 @@
                                                                                                  Optional Returns Promise<`0x${string}`>
                                                                                                  +
                                                                                                • Defined in src/contracts/BaseContract.ts:28
                                                                                                • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                                                      type: "constructor";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_multiSourceLoanAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "_marketplaceContracts";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "_wethAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address payable";
                                                                                                      }, {
                                                                                                          name: "_punkMarketAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address payable";
                                                                                                      }, {
                                                                                                          name: "_wrappedPunkAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address payable";
                                                                                                      }, {
                                                                                                          name: "__taxes";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "_minWaitTime";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "__protocolFee";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "fallback";
                                                                                                      stateMutability: "payable";
                                                                                                  }, {
                                                                                                      type: "receive";
                                                                                                      stateMutability: "payable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "FEE_UPDATE_NOTICE";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "MIN_WAIT_TIME";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "TAX_UPDATE_NOTICE";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "afterNFTTransfer";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_loan";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                                          components: readonly [{
                                                                                                              name: "borrower";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "nftCollateralTokenId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "nftCollateralAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "duration";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "tranche";
                                                                                                              type: "tuple[]";
                                                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                              components: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "floor";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "accruedInterest";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "startTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "protocolFee";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes";
                                                                                                          internalType: "bytes";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "bytes4";
                                                                                                          internalType: "bytes4";
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "afterPrincipalTransfer";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_loan";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                                          components: readonly [{
                                                                                                              name: "borrower";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "nftCollateralTokenId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "nftCollateralAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "duration";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "tranche";
                                                                                                              type: "tuple[]";
                                                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                              components: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "floor";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "accruedInterest";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "startTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "protocolFee";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "_fee";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes";
                                                                                                          internalType: "bytes";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "bytes4";
                                                                                                          internalType: "bytes4";
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "buy";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes[]";
                                                                                                          internalType: "bytes[]";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256[]";
                                                                                                          internalType: "uint256[]";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "tuple[]";
                                                                                                          internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                                          components: readonly [{
                                                                                                              name: "borrower";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "nftCollateralTokenId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "nftCollateralAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "duration";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "tranche";
                                                                                                              type: "tuple[]";
                                                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                              components: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "floor";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "accruedInterest";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "startTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "protocolFee";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "payable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "executeSell";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_currencies";
                                                                                                          type: "address[]";
                                                                                                          internalType: "contract ERC20[]";
                                                                                                      }, {
                                                                                                          name: "_currencyAmounts";
                                                                                                          type: "uint256[]";
                                                                                                          internalType: "uint256[]";
                                                                                                      }, {
                                                                                                          name: "_collections";
                                                                                                          type: "address[]";
                                                                                                          internalType: "contract ERC721[]";
                                                                                                      }, {
                                                                                                          name: "_tokenIds";
                                                                                                          type: "uint256[]";
                                                                                                          internalType: "uint256[]";
                                                                                                      }, {
                                                                                                          name: "_marketPlace";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes[]";
                                                                                                          internalType: "bytes[]";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "finalUpdateMultiSourceLoanAddress";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getMultiSourceLoanAddress";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingProtocolFee";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingProtocolFeeSetTime";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingTaxes";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingTaxesSetTime";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getProtocolFee";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getTaxes";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "onERC721Received";
                                                                                                      inputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "bytes";
                                                                                                          internalType: "bytes";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "bytes4";
                                                                                                          internalType: "bytes4";
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "owner";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "pendingOwner";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "pendingOwnerTime";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "requestTransferOwner";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newOwner";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "sell";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes[]";
                                                                                                          internalType: "bytes[]";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "setProtocolFee";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "setTaxes";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "transferOwnership";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "transferOwnership";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newOwner";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "updateMultiSourceLoanAddressFirst";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "updateProtocolFee";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newProtocolFee";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "updateTaxes";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newTaxes";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "BNPLLoansStarted";
                                                                                                      inputs: readonly [{
                                                                                                          name: "loanIds";
                                                                                                          type: "uint256[]";
                                                                                                          indexed: false;
                                                                                                          internalType: "uint256[]";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "MultiSourceLoanPendingUpdate";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newAddress";
                                                                                                          type: "address";
                                                                                                          indexed: false;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "MultiSourceLoanUpdated";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newAddress";
                                                                                                          type: "address";
                                                                                                          indexed: false;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "OwnershipTransferred";
                                                                                                      inputs: readonly [{
                                                                                                          name: "user";
                                                                                                          type: "address";
                                                                                                          indexed: true;
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "newOwner";
                                                                                                          type: "address";
                                                                                                          indexed: true;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "ProtocolFeePendingUpdate";
                                                                                                      inputs: readonly [{
                                                                                                          name: "fee";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "ProtocolFeeUpdated";
                                                                                                      inputs: readonly [{
                                                                                                          name: "fee";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "SellAndRepayExecuted";
                                                                                                      inputs: readonly [{
                                                                                                          name: "loanIds";
                                                                                                          type: "uint256[]";
                                                                                                          indexed: false;
                                                                                                          internalType: "uint256[]";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "TaxesPendingUpdate";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newTaxes";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "TaxesUpdated";
                                                                                                      inputs: readonly [{
                                                                                                          name: "taxes";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "TransferOwnerRequested";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newOwner";
                                                                                                          type: "address";
                                                                                                          indexed: false;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "AddressZeroError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "CouldNotReturnEthError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidAddressUpdateError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidCallbackError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidInputError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidTaxesError";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newTaxes";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "MarketplaceAddressNotWhitelisted";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "OnlyLoanCallableError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "OnlyWethSupportedError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "TooEarlyError";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_pendingProtocolFeeSetTime";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "TooSoonError";
                                                                                                      inputs: readonly [];
                                                                                                  }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "BNPLLoansStarted" | "MultiSourceLoanPendingUpdate" | "MultiSourceLoanUpdated" | "SellAndRepayExecuted" | "TransferOwnerRequested" | "TaxesPendingUpdate" | "TaxesUpdated")[]
                                                                                                      ? TFunctionName[number]
                                                                                                      : TFunctionName>)
                                                                                                  @@ -451,7 +451,7 @@
                                                                                                  logs: Returns ParseEventLogsReturnType<readonly [{
                                                                                                      type: "constructor";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_multiSourceLoanAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "_marketplaceContracts";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "_wethAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address payable";
                                                                                                      }, {
                                                                                                          name: "_punkMarketAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address payable";
                                                                                                      }, {
                                                                                                          name: "_wrappedPunkAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address payable";
                                                                                                      }, {
                                                                                                          name: "__taxes";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "_minWaitTime";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "__protocolFee";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "fallback";
                                                                                                      stateMutability: "payable";
                                                                                                  }, {
                                                                                                      type: "receive";
                                                                                                      stateMutability: "payable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "FEE_UPDATE_NOTICE";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "MIN_WAIT_TIME";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "TAX_UPDATE_NOTICE";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "afterNFTTransfer";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_loan";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                                          components: readonly [{
                                                                                                              name: "borrower";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "nftCollateralTokenId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "nftCollateralAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "duration";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "tranche";
                                                                                                              type: "tuple[]";
                                                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                              components: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "floor";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "accruedInterest";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "startTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "protocolFee";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes";
                                                                                                          internalType: "bytes";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "bytes4";
                                                                                                          internalType: "bytes4";
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "afterPrincipalTransfer";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_loan";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IMultiSourceLoan.Loan";
                                                                                                          components: readonly [{
                                                                                                              name: "borrower";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "nftCollateralTokenId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "nftCollateralAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "duration";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "tranche";
                                                                                                              type: "tuple[]";
                                                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                              components: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "floor";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "accruedInterest";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "startTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "protocolFee";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          name: "_fee";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes";
                                                                                                          internalType: "bytes";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "bytes4";
                                                                                                          internalType: "bytes4";
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "buy";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes[]";
                                                                                                          internalType: "bytes[]";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256[]";
                                                                                                          internalType: "uint256[]";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "tuple[]";
                                                                                                          internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                                          components: readonly [{
                                                                                                              name: "borrower";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "nftCollateralTokenId";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "nftCollateralAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAddress";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "principalAmount";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "startTime";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "duration";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }, {
                                                                                                              name: "tranche";
                                                                                                              type: "tuple[]";
                                                                                                              internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                              components: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "floor";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "principalAmount";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "accruedInterest";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "startTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "aprBps";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              name: "protocolFee";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "payable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "executeSell";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_currencies";
                                                                                                          type: "address[]";
                                                                                                          internalType: "contract ERC20[]";
                                                                                                      }, {
                                                                                                          name: "_currencyAmounts";
                                                                                                          type: "uint256[]";
                                                                                                          internalType: "uint256[]";
                                                                                                      }, {
                                                                                                          name: "_collections";
                                                                                                          type: "address[]";
                                                                                                          internalType: "contract ERC721[]";
                                                                                                      }, {
                                                                                                          name: "_tokenIds";
                                                                                                          type: "uint256[]";
                                                                                                          internalType: "uint256[]";
                                                                                                      }, {
                                                                                                          name: "_marketPlace";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes[]";
                                                                                                          internalType: "bytes[]";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "finalUpdateMultiSourceLoanAddress";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getMultiSourceLoanAddress";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingProtocolFee";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingProtocolFeeSetTime";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingTaxes";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getPendingTaxesSetTime";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getProtocolFee";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "getTaxes";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "onERC721Received";
                                                                                                      inputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }, {
                                                                                                          name: "";
                                                                                                          type: "bytes";
                                                                                                          internalType: "bytes";
                                                                                                      }];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "bytes4";
                                                                                                          internalType: "bytes4";
                                                                                                      }];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "owner";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "pendingOwner";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "pendingOwnerTime";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [{
                                                                                                          name: "";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                      stateMutability: "view";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "requestTransferOwner";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newOwner";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "sell";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_executionData";
                                                                                                          type: "bytes[]";
                                                                                                          internalType: "bytes[]";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "setProtocolFee";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "setTaxes";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "transferOwnership";
                                                                                                      inputs: readonly [];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "transferOwnership";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newOwner";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "updateMultiSourceLoanAddressFirst";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newAddress";
                                                                                                          type: "address";
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "updateProtocolFee";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newProtocolFee";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "function";
                                                                                                      name: "updateTaxes";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_newTaxes";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      outputs: readonly [];
                                                                                                      stateMutability: "nonpayable";
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "BNPLLoansStarted";
                                                                                                      inputs: readonly [{
                                                                                                          name: "loanIds";
                                                                                                          type: "uint256[]";
                                                                                                          indexed: false;
                                                                                                          internalType: "uint256[]";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "MultiSourceLoanPendingUpdate";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newAddress";
                                                                                                          type: "address";
                                                                                                          indexed: false;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "MultiSourceLoanUpdated";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newAddress";
                                                                                                          type: "address";
                                                                                                          indexed: false;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "OwnershipTransferred";
                                                                                                      inputs: readonly [{
                                                                                                          name: "user";
                                                                                                          type: "address";
                                                                                                          indexed: true;
                                                                                                          internalType: "address";
                                                                                                      }, {
                                                                                                          name: "newOwner";
                                                                                                          type: "address";
                                                                                                          indexed: true;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "ProtocolFeePendingUpdate";
                                                                                                      inputs: readonly [{
                                                                                                          name: "fee";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "ProtocolFeeUpdated";
                                                                                                      inputs: readonly [{
                                                                                                          name: "fee";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                          components: readonly [{
                                                                                                              name: "recipient";
                                                                                                              type: "address";
                                                                                                              internalType: "address";
                                                                                                          }, {
                                                                                                              name: "fraction";
                                                                                                              type: "uint256";
                                                                                                              internalType: "uint256";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "SellAndRepayExecuted";
                                                                                                      inputs: readonly [{
                                                                                                          name: "loanIds";
                                                                                                          type: "uint256[]";
                                                                                                          indexed: false;
                                                                                                          internalType: "uint256[]";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "TaxesPendingUpdate";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newTaxes";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "TaxesUpdated";
                                                                                                      inputs: readonly [{
                                                                                                          name: "taxes";
                                                                                                          type: "tuple";
                                                                                                          indexed: false;
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "event";
                                                                                                      name: "TransferOwnerRequested";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newOwner";
                                                                                                          type: "address";
                                                                                                          indexed: false;
                                                                                                          internalType: "address";
                                                                                                      }];
                                                                                                      anonymous: false;
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "AddressZeroError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "CouldNotReturnEthError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidAddressUpdateError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidCallbackError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidInputError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "InvalidTaxesError";
                                                                                                      inputs: readonly [{
                                                                                                          name: "newTaxes";
                                                                                                          type: "tuple";
                                                                                                          internalType: "struct IPurchaseBundler.Taxes";
                                                                                                          components: readonly [{
                                                                                                              name: "buyTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }, {
                                                                                                              name: "sellTax";
                                                                                                              type: "uint128";
                                                                                                              internalType: "uint128";
                                                                                                          }];
                                                                                                      }];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "MarketplaceAddressNotWhitelisted";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "OnlyLoanCallableError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "OnlyWethSupportedError";
                                                                                                      inputs: readonly [];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "TooEarlyError";
                                                                                                      inputs: readonly [{
                                                                                                          name: "_pendingProtocolFeeSetTime";
                                                                                                          type: "uint256";
                                                                                                          internalType: "uint256";
                                                                                                      }];
                                                                                                  }, {
                                                                                                      type: "error";
                                                                                                      name: "TooSoonError";
                                                                                                      inputs: readonly [];
                                                                                                  }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "ProtocolFeePendingUpdate" | "ProtocolFeeUpdated" | "BNPLLoansStarted" | "MultiSourceLoanPendingUpdate" | "MultiSourceLoanUpdated" | "SellAndRepayExecuted" | "TransferOwnerRequested" | "TaxesPendingUpdate" | "TaxesUpdated")[]
                                                                                                      ? TFunctionName[number]
                                                                                                      : TFunctionName>
                                                                                                  +
                                                                                                • Defined in src/contracts/BaseContract.ts:35
                                                                                                • @@ -23,7 +23,7 @@

                                                                                                  Hierarchy

                                                                                                  • UserVaultV5
                                                                                                  +
                                                                                                • Defined in src/contracts/UserVaultV5.ts:11
                                                                                                • @@ -70,7 +70,7 @@
                                                                                                  walletClientReturns UserVaultV5
                                                                                                  +
                                                                                                • Defined in src/contracts/UserVaultV5.ts:12
                                                                                                • Methods

                                                                                                  @@ -85,7 +85,7 @@

                                                                                                  Parameters

                                                                                                  __namedParameters: BurnAndWithdrawArgs

                                                                                                  Returns Promise<{
                                                                                                      txHash: `0x${string}`;
                                                                                                      waitTxInBlock: (() => Promise<{
                                                                                                          events: {
                                                                                                              vaultId: bigint;
                                                                                                              collection: `0x${string}`;
                                                                                                              tokenId: bigint;
                                                                                                          }[];
                                                                                                          oldEvents: {
                                                                                                              vaultId: bigint;
                                                                                                              collection: `0x${string}`;
                                                                                                              tokenId: bigint;
                                                                                                          }[];
                                                                                                      }>);
                                                                                                  }>

                                                                                                  +
                                                                                                • Defined in src/contracts/UserVaultV5.ts:22
                                                                                                • Returns Promise<{
                                                                                                      vaultId: bigint;
                                                                                                      receipts: {
                                                                                                          vaultId: bigint;
                                                                                                          collection: `0x${string}`;
                                                                                                          tokenId: bigint;
                                                                                                      }[];
                                                                                                  }>

                                                                                                  +
                                                                                                • Defined in src/contracts/UserVaultV5.ts:55
                                                                                                • Returns Promise<{
                                                                                                      txHash: `0x${string}`;
                                                                                                      waitTxInBlock: (() => Promise<{
                                                                                                          vaultId: bigint;
                                                                                                          collection: `0x${string}`;
                                                                                                          tokenId: bigint;
                                                                                                      }>);
                                                                                                  }>

                                                                                                  +
                                                                                                • Defined in src/contracts/UserVaultV5.ts:80
                                                                                                • +
                                                                                                • Defined in src/contracts/UserVaultV5.ts:96
                                                                                                • +
                                                                                                • Defined in src/contracts/BaseContract.ts:93
                                                                                                • Properties

                                                                                                  @@ -141,13 +141,13 @@
                                                                                                  +
                                                                                                • Defined in src/contracts/BaseContract.ts:22
                                                                                                • address: `0x${string}`
                                                                                                  +
                                                                                                • Defined in src/contracts/BaseContract.ts:23
                                                                                                • bcClient: {}
                                                                                                  @@ -156,7 +156,7 @@

                                                                                                  Type declaration

                                                                                                    +
                                                                                                  • Defined in src/contracts/BaseContract.ts:24
                                                                                                  • wallet: {}
                                                                                                    @@ -165,13 +165,13 @@

                                                                                                    Type declaration

                                                                                                      +
                                                                                                    • Defined in src/contracts/BaseContract.ts:25
                                                                                                    • contract: GetContractReturnType<readonly [{
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "constructor";
                                                                                                          inputs: readonly [{
                                                                                                              name: "currencyManager";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "collectionManager";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "AssetNotOwnedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "CollectionNotWhitelistedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "CurrencyNotWhitelistedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "LengthMismatchError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "NotApprovedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "VaultNotExistsError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "WithdrawingETHError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "WrongMethodError";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "spender";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: true;
                                                                                                          }];
                                                                                                          name: "Approval";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "operator";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "approved";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ApprovalForAll";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC20Deposited";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC20Withdrawn";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC721Deposited";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC721Withdrawn";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "user";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "newOwner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }];
                                                                                                          name: "OwnershipTransferred";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: true;
                                                                                                          }];
                                                                                                          name: "Transfer";
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "ERC20BalanceOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "ERC721OwnerOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "ETH";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "spender";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "approve";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "balanceOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_assetRecipient";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "burn";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collections";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }, {
                                                                                                              name: "_tokenIds";
                                                                                                              internalType: "uint256[]";
                                                                                                              type: "uint256[]";
                                                                                                          }, {
                                                                                                              name: "_tokens";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }];
                                                                                                          name: "burnAndWithdraw";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "depositERC20";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "depositERC721";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenIds";
                                                                                                              internalType: "uint256[]";
                                                                                                              type: "uint256[]";
                                                                                                          }];
                                                                                                          name: "depositERC721s";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "payable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "depositEth";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "getApproved";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "isApprovedForAll";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "mint";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "name";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "string";
                                                                                                              type: "string";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                          name: "onERC721Received";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "bytes4";
                                                                                                              type: "bytes4";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "owner";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "ownerOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "safeTransferFrom";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "data";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                          name: "safeTransferFrom";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "operator";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "approved";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                          }];
                                                                                                          name: "setApprovalForAll";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "interfaceId";
                                                                                                              internalType: "bytes4";
                                                                                                              type: "bytes4";
                                                                                                          }];
                                                                                                          name: "supportsInterface";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "symbol";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "string";
                                                                                                              type: "string";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "pure";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "tokenURI";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "string";
                                                                                                              type: "string";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "transferFrom";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "newOwner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "transferOwnership";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "withdrawERC20";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_tokens";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }];
                                                                                                          name: "withdrawERC20s";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "withdrawERC721";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collections";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }, {
                                                                                                              name: "_tokenIds";
                                                                                                              internalType: "uint256[]";
                                                                                                              type: "uint256[]";
                                                                                                          }];
                                                                                                          name: "withdrawERC721s";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "withdrawEth";
                                                                                                          outputs: readonly [];
                                                                                                      }], {} | {}>
                                                                                                      +
                                                                                                    • Defined in src/contracts/BaseContract.ts:26
                                                                                                    • safeContractWrite: {
                                                                                                          transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          approve: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          transferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          safeTransferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          setApprovalForAll: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          mint: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          burn: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          burnAndWithdraw: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          depositERC20: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          depositERC721: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          depositERC721s: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          depositEth: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          withdrawERC20: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          withdrawERC20s: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          withdrawERC721: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          withdrawERC721s: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          withdrawEth: ((args, options?) => Promise<`0x${string}`>);
                                                                                                      }
                                                                                                      @@ -504,7 +504,7 @@
                                                                                                      Optional Returns Promise<`0x${string}`>
                                                                                                      +
                                                                                                    • Defined in src/contracts/BaseContract.ts:28
                                                                                                    • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "constructor";
                                                                                                          inputs: readonly [{
                                                                                                              name: "currencyManager";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "collectionManager";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "AssetNotOwnedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "CollectionNotWhitelistedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "CurrencyNotWhitelistedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "LengthMismatchError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "NotApprovedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "VaultNotExistsError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "WithdrawingETHError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "WrongMethodError";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "spender";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: true;
                                                                                                          }];
                                                                                                          name: "Approval";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "operator";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "approved";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ApprovalForAll";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC20Deposited";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC20Withdrawn";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC721Deposited";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC721Withdrawn";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "user";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "newOwner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }];
                                                                                                          name: "OwnershipTransferred";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: true;
                                                                                                          }];
                                                                                                          name: "Transfer";
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "ERC20BalanceOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "ERC721OwnerOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "ETH";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "spender";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "approve";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "balanceOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_assetRecipient";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "burn";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collections";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }, {
                                                                                                              name: "_tokenIds";
                                                                                                              internalType: "uint256[]";
                                                                                                              type: "uint256[]";
                                                                                                          }, {
                                                                                                              name: "_tokens";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }];
                                                                                                          name: "burnAndWithdraw";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "depositERC20";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "depositERC721";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenIds";
                                                                                                              internalType: "uint256[]";
                                                                                                              type: "uint256[]";
                                                                                                          }];
                                                                                                          name: "depositERC721s";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "payable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "depositEth";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "getApproved";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "isApprovedForAll";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "mint";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "name";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "string";
                                                                                                              type: "string";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                          name: "onERC721Received";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "bytes4";
                                                                                                              type: "bytes4";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "owner";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "ownerOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "safeTransferFrom";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "data";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                          name: "safeTransferFrom";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "operator";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "approved";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                          }];
                                                                                                          name: "setApprovalForAll";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "interfaceId";
                                                                                                              internalType: "bytes4";
                                                                                                              type: "bytes4";
                                                                                                          }];
                                                                                                          name: "supportsInterface";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "symbol";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "string";
                                                                                                              type: "string";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "pure";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "tokenURI";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "string";
                                                                                                              type: "string";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "transferFrom";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "newOwner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "transferOwnership";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "withdrawERC20";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_tokens";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }];
                                                                                                          name: "withdrawERC20s";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "withdrawERC721";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collections";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }, {
                                                                                                              name: "_tokenIds";
                                                                                                              internalType: "uint256[]";
                                                                                                              type: "uint256[]";
                                                                                                          }];
                                                                                                          name: "withdrawERC721s";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "withdrawEth";
                                                                                                          outputs: readonly [];
                                                                                                      }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn")[]
                                                                                                          ? TFunctionName[number]
                                                                                                          : TFunctionName>)
                                                                                                      @@ -530,7 +530,7 @@
                                                                                                      logs: Returns ParseEventLogsReturnType<readonly [{
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "constructor";
                                                                                                          inputs: readonly [{
                                                                                                              name: "currencyManager";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "collectionManager";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "AssetNotOwnedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "CollectionNotWhitelistedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "CurrencyNotWhitelistedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "LengthMismatchError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "NotApprovedError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "VaultNotExistsError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "WithdrawingETHError";
                                                                                                      }, {
                                                                                                          type: "error";
                                                                                                          inputs: readonly [];
                                                                                                          name: "WrongMethodError";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "spender";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: true;
                                                                                                          }];
                                                                                                          name: "Approval";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "operator";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "approved";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ApprovalForAll";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC20Deposited";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC20Withdrawn";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC721Deposited";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: false;
                                                                                                          }, {
                                                                                                              name: "tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: false;
                                                                                                          }];
                                                                                                          name: "ERC721Withdrawn";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "user";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "newOwner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }];
                                                                                                          name: "OwnershipTransferred";
                                                                                                      }, {
                                                                                                          type: "event";
                                                                                                          anonymous: false;
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                              indexed: true;
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                              indexed: true;
                                                                                                          }];
                                                                                                          name: "Transfer";
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "ERC20BalanceOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "ERC721OwnerOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "ETH";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "spender";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "approve";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "balanceOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_assetRecipient";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "burn";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collections";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }, {
                                                                                                              name: "_tokenIds";
                                                                                                              internalType: "uint256[]";
                                                                                                              type: "uint256[]";
                                                                                                          }, {
                                                                                                              name: "_tokens";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }];
                                                                                                          name: "burnAndWithdraw";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_amount";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "depositERC20";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "depositERC721";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenIds";
                                                                                                              internalType: "uint256[]";
                                                                                                              type: "uint256[]";
                                                                                                          }];
                                                                                                          name: "depositERC721s";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "payable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "depositEth";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "getApproved";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "isApprovedForAll";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "mint";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "name";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "string";
                                                                                                              type: "string";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                          name: "onERC721Received";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "bytes4";
                                                                                                              type: "bytes4";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "owner";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "ownerOf";
                                                                                                          outputs: readonly [{
                                                                                                              name: "owner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "safeTransferFrom";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "data";
                                                                                                              internalType: "bytes";
                                                                                                              type: "bytes";
                                                                                                          }];
                                                                                                          name: "safeTransferFrom";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "operator";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "approved";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                          }];
                                                                                                          name: "setApprovalForAll";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "interfaceId";
                                                                                                              internalType: "bytes4";
                                                                                                              type: "bytes4";
                                                                                                          }];
                                                                                                          name: "supportsInterface";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "bool";
                                                                                                              type: "bool";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "view";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [];
                                                                                                          name: "symbol";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "string";
                                                                                                              type: "string";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "pure";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "tokenURI";
                                                                                                          outputs: readonly [{
                                                                                                              name: "";
                                                                                                              internalType: "string";
                                                                                                              type: "string";
                                                                                                          }];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "from";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "to";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "id";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "transferFrom";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "newOwner";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "transferOwnership";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_token";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }];
                                                                                                          name: "withdrawERC20";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_tokens";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }];
                                                                                                          name: "withdrawERC20s";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collection";
                                                                                                              internalType: "address";
                                                                                                              type: "address";
                                                                                                          }, {
                                                                                                              name: "_tokenId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "withdrawERC721";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }, {
                                                                                                              name: "_collections";
                                                                                                              internalType: "address[]";
                                                                                                              type: "address[]";
                                                                                                          }, {
                                                                                                              name: "_tokenIds";
                                                                                                              internalType: "uint256[]";
                                                                                                              type: "uint256[]";
                                                                                                          }];
                                                                                                          name: "withdrawERC721s";
                                                                                                          outputs: readonly [];
                                                                                                      }, {
                                                                                                          stateMutability: "nonpayable";
                                                                                                          type: "function";
                                                                                                          inputs: readonly [{
                                                                                                              name: "_vaultId";
                                                                                                              internalType: "uint256";
                                                                                                              type: "uint256";
                                                                                                          }];
                                                                                                          name: "withdrawEth";
                                                                                                          outputs: readonly [];
                                                                                                      }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn")[]
                                                                                                          ? TFunctionName[number]
                                                                                                          : TFunctionName>
                                                                                                      +
                                                                                                    • Defined in src/contracts/BaseContract.ts:35
                                                                                                    • @@ -23,7 +23,7 @@

                                                                                                      Hierarchy

                                                                                                      • UserVaultV6
                                                                                                      +
                                                                                                    • Defined in src/contracts/UserVaultV6.ts:15
                                                                                                    • @@ -70,7 +70,7 @@
                                                                                                      walletClientReturns UserVaultV6
                                                                                                      +
                                                                                                    • Defined in src/contracts/UserVaultV6.ts:16
                                                                                                    • Methods

                                                                                                      @@ -85,7 +85,7 @@

                                                                                                      Parameters

                                                                                                      __namedParameters: BurnAndWithdrawArgs

                                                                                                      Returns Promise<{
                                                                                                          txHash: `0x${string}`;
                                                                                                          waitTxInBlock: (() => Promise<{
                                                                                                              events: {
                                                                                                                  vaultId: bigint;
                                                                                                                  collection: `0x${string}`;
                                                                                                                  tokenId: bigint;
                                                                                                              }[];
                                                                                                              oldEvents: {
                                                                                                                  vaultId: bigint;
                                                                                                                  collection: `0x${string}`;
                                                                                                                  tokenId: bigint;
                                                                                                              }[];
                                                                                                          }>);
                                                                                                      }>

                                                                                                      +
                                                                                                    • Defined in src/contracts/UserVaultV6.ts:26
                                                                                                    • Returns Promise<{
                                                                                                          vaultId: bigint;
                                                                                                          receipts: ({
                                                                                                              vaultId: bigint;
                                                                                                              collection: `0x${string}`;
                                                                                                              tokenId: bigint;
                                                                                                          } | {
                                                                                                              vaultId: bigint;
                                                                                                              token: `0x${string}`;
                                                                                                              tokenId: bigint;
                                                                                                              amount: bigint;
                                                                                                          })[];
                                                                                                      }>

                                                                                                      +
                                                                                                    • Defined in src/contracts/UserVaultV6.ts:73
                                                                                                    • Returns Promise<{
                                                                                                          txHash: `0x${string}`;
                                                                                                          waitTxInBlock: (() => Promise<{
                                                                                                              vaultId: bigint;
                                                                                                              collection: `0x${string}`;
                                                                                                              tokenId: bigint;
                                                                                                          }>);
                                                                                                      }>

                                                                                                      +
                                                                                                    • Defined in src/contracts/UserVaultV6.ts:101
                                                                                                    • Returns Promise<{
                                                                                                          txHash: `0x${string}`;
                                                                                                          waitTxInBlock: (() => Promise<{
                                                                                                              vaultId: bigint;
                                                                                                              token: `0x${string}`;
                                                                                                              tokenId: bigint;
                                                                                                              amount: bigint;
                                                                                                          }>);
                                                                                                      }>

                                                                                                      +
                                                                                                    • Defined in src/contracts/UserVaultV6.ts:117
                                                                                                    • +
                                                                                                    • Defined in src/contracts/BaseContract.ts:93
                                                                                                    • Properties

                                                                                                      @@ -146,13 +146,13 @@
                                                                                                      +
                                                                                                    • Defined in src/contracts/BaseContract.ts:22
                                                                                                    • address: `0x${string}`
                                                                                                      +
                                                                                                    • Defined in src/contracts/BaseContract.ts:23
                                                                                                    • bcClient: {}
                                                                                                      @@ -161,7 +161,7 @@

                                                                                                      Type declaration

                                                                                                        +
                                                                                                      • Defined in src/contracts/BaseContract.ts:24
                                                                                                      • wallet: {}
                                                                                                        @@ -170,13 +170,13 @@

                                                                                                        Type declaration

                                                                                                          +
                                                                                                        • Defined in src/contracts/BaseContract.ts:25
                                                                                                        • contract: GetContractReturnType<readonly [{
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ERC1155BalanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "ERC20BalanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ERC721OwnerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ETH";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "approve";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "balanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_assetRecipient";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "burn";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_erc1155Tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_erc1155TokensIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "burnAndWithdraw";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC1155";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_amounts";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "depositERC1155s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC20";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC721";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "depositERC721s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositEth";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "payable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getApproved";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isApprovedForAll";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "mint";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC1155BatchReceived";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC1155Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ownerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "setApprovalForAll";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "interfaceId";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              name: "supportsInterface";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "symbol";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "tokenURI";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "pure";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "transferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawERC1155";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC1155s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "withdrawERC20";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC20s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawERC721";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC721s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawEth";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Approval";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ApprovalForAll";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC1155Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC1155Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Transfer";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AssetNotOwnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCallerError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LengthMismatchError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "NotApprovedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "VaultNotExistsError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WithdrawingETHError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WrongMethodError";
                                                                                                          }], {} | {}>
                                                                                                          +
                                                                                                        • Defined in src/contracts/BaseContract.ts:26
                                                                                                        • safeContractWrite: {
                                                                                                              transferOwnership: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              onERC721Received: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              approve: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              transferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              safeTransferFrom: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              setApprovalForAll: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              mint: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              burn: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              burnAndWithdraw: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              depositERC20: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              depositERC721: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              depositERC721s: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              depositEth: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              withdrawERC20: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              withdrawERC20s: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              withdrawERC721: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              withdrawERC721s: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              withdrawEth: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              depositERC1155: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              depositERC1155s: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              withdrawERC1155: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              withdrawERC1155s: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              onERC1155BatchReceived: ((args, options?) => Promise<`0x${string}`>);
                                                                                                              onERC1155Received: ((args, options?) => Promise<`0x${string}`>);
                                                                                                          }
                                                                                                          @@ -617,7 +617,7 @@
                                                                                                          Optional Returns Promise<`0x${string}`>
                                                                                                          +
                                                                                                        • Defined in src/contracts/BaseContract.ts:28
                                                                                                        • parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ERC1155BalanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "ERC20BalanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ERC721OwnerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ETH";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "approve";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "balanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_assetRecipient";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "burn";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_erc1155Tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_erc1155TokensIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "burnAndWithdraw";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC1155";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_amounts";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "depositERC1155s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC20";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC721";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "depositERC721s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositEth";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "payable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getApproved";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isApprovedForAll";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "mint";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC1155BatchReceived";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC1155Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ownerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "setApprovalForAll";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "interfaceId";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              name: "supportsInterface";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "symbol";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "tokenURI";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "pure";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "transferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawERC1155";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC1155s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "withdrawERC20";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC20s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawERC721";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC721s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawEth";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Approval";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ApprovalForAll";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC1155Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC1155Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Transfer";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AssetNotOwnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCallerError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LengthMismatchError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "NotApprovedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "VaultNotExistsError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WithdrawingETHError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WrongMethodError";
                                                                                                          }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn" | "ERC1155Deposited" | "ERC1155Withdrawn")[]
                                                                                                              ? TFunctionName[number]
                                                                                                              : TFunctionName>)
                                                                                                          @@ -643,7 +643,7 @@
                                                                                                          logs: Returns ParseEventLogsReturnType<readonly [{
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ERC1155BalanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "ERC20BalanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ERC721OwnerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ETH";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "approve";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "balanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_assetRecipient";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "burn";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_erc1155Tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_erc1155TokensIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "burnAndWithdraw";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC1155";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_amounts";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "depositERC1155s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC20";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC721";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "depositERC721s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositEth";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "payable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getApproved";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isApprovedForAll";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "mint";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC1155BatchReceived";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC1155Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ownerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "setApprovalForAll";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "interfaceId";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              name: "supportsInterface";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "symbol";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "tokenURI";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "pure";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "transferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawERC1155";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC1155s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "withdrawERC20";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC20s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawERC721";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC721s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawEth";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Approval";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ApprovalForAll";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC1155Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC1155Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Transfer";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AssetNotOwnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCallerError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LengthMismatchError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "NotApprovedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "VaultNotExistsError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WithdrawingETHError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WrongMethodError";
                                                                                                          }], TFunctionName, true, TFunctionName extends ("OwnershipTransferred" | "Approval" | "Transfer" | "ApprovalForAll" | "ERC20Deposited" | "ERC20Withdrawn" | "ERC721Deposited" | "ERC721Withdrawn" | "ERC1155Deposited" | "ERC1155Withdrawn")[]
                                                                                                              ? TFunctionName[number]
                                                                                                              : TFunctionName>
                                                                                                          +
                                                                                                        • Defined in src/contracts/BaseContract.ts:35
                                                                                                        • @@ -17,7 +17,7 @@
                                                                                                        • LoanSortField
                                                                                                        • Enumeration LoanSortField

                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:924
                                                                                                        • @@ -44,62 +44,62 @@

                                                                                                          Enumeration Members

                                                                                                          AprBps: "APR_BPS"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:925
                                                                                                        • Duration: "DURATION"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:926
                                                                                                        • EffectiveAprBps: "EFFECTIVE_APR_BPS"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:927
                                                                                                        • EndDate: "END_DATE"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:928
                                                                                                        • ExpectedInterest: "EXPECTED_INTEREST"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:929
                                                                                                        • ExpirationDate: "EXPIRATION_DATE"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:930
                                                                                                        • OriginationFee: "ORIGINATION_FEE"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:931
                                                                                                        • PaidInterest: "PAID_INTEREST"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:932
                                                                                                        • PrincipalAmount: "PRINCIPAL_AMOUNT"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:933
                                                                                                        • RenegotiationRequested: "RENEGOTIATION_REQUESTED"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:934
                                                                                                        • StartTime: "START_TIME"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:935
                                                                                                        • TotalInterest: "TOTAL_INTEREST"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:936
                                                                                                        • @@ -16,7 +16,7 @@
                                                                                                        • LoanStatusType
                                                                                                        • Enumeration LoanStatusType

                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:944
                                                                                                        • @@ -38,37 +38,37 @@

                                                                                                          Enumeration Members

                                                                                                          LoanAuctioned: "LOAN_AUCTIONED"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:945
                                                                                                        • LoanAuctionedWithBuyout: "LOAN_AUCTIONED_WITH_BUYOUT"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:946
                                                                                                        • LoanDefaulted: "LOAN_DEFAULTED"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:947
                                                                                                        • LoanForeclosed: "LOAN_FORECLOSED"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:948
                                                                                                        • LoanInitiated: "LOAN_INITIATED"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:949
                                                                                                        • LoanRepaid: "LOAN_REPAID"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:950
                                                                                                        • LoanSentToAuction: "LOAN_SENT_TO_AUCTION"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:951
                                                                                                        • @@ -16,7 +16,7 @@
                                                                                                        • MarketplaceEnum
                                                                                                        • Enumeration MarketplaceEnum

                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:995
                                                                                                        • @@ -33,12 +33,12 @@

                                                                                                          Enumeration Members

                                                                                                          Gondi: "GONDI"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:996
                                                                                                        • Nftfi: "NFTFI"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:997
                                                                                                        • @@ -16,7 +16,7 @@
                                                                                                        • OfferStatus
                                                                                                        • Enumeration OfferStatus

                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1460
                                                                                                        • @@ -37,32 +37,32 @@

                                                                                                          Enumeration Members

                                                                                                          Active: "ACTIVE"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1461
                                                                                                        • Cancelled: "CANCELLED"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1462
                                                                                                        • Executed: "EXECUTED"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1463
                                                                                                        • Expired: "EXPIRED"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1464
                                                                                                        • Inactive: "INACTIVE"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1465
                                                                                                        • Outperformed: "OUTPERFORMED"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1466
                                                                                                        • @@ -16,7 +16,7 @@
                                                                                                        • OffersSortField
                                                                                                        • Enumeration OffersSortField

                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1482
                                                                                                        • @@ -46,77 +46,77 @@

                                                                                                          Enumeration Members

                                                                                                          AprBps: "APR_BPS"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1483
                                                                                                        • AvailablePrincipalAmount: "AVAILABLE_PRINCIPAL_AMOUNT"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1484
                                                                                                        • CreatedDate: "CREATED_DATE"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1485
                                                                                                        • DailyInterest: "DAILY_INTEREST"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1486
                                                                                                        • Duration: "DURATION"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1487
                                                                                                        • EffectiveAprBps: "EFFECTIVE_APR_BPS"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1488
                                                                                                        • Expiration: "EXPIRATION"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1489
                                                                                                        • Fee: "FEE"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1490
                                                                                                        • MaxPrincipal: "MAX_PRINCIPAL"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1491
                                                                                                        • NetInterest: "NET_INTEREST"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1492
                                                                                                        • NetPrincipal: "NET_PRINCIPAL"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1493
                                                                                                        • PrincipalAmount: "PRINCIPAL_AMOUNT"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1494
                                                                                                        • Repayment: "REPAYMENT"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1495
                                                                                                        • Status: "STATUS"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1496
                                                                                                        • TotalInterest: "TOTAL_INTEREST"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1497
                                                                                                        • @@ -16,7 +16,7 @@
                                                                                                        • Ordering
                                                                                                        • Enumeration Ordering

                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1562
                                                                                                        • @@ -33,12 +33,12 @@

                                                                                                          Enumeration Members

                                                                                                          Asc: "ASC"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1563
                                                                                                        • Desc: "DESC"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1564
                                                                                                        • @@ -16,7 +16,7 @@
                                                                                                        • TokenStandardType
                                                                                                        • Enumeration TokenStandardType

                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2581
                                                                                                        • @@ -34,17 +34,17 @@

                                                                                                          Enumeration Members

                                                                                                          Erc721: "ERC721"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2582
                                                                                                        • Erc1155: "ERC1155"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2583
                                                                                                        • OldErc721: "OLD_ERC721"
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2584
                                                                                                        • -

                                                                                                          Gondi JS SDK - v0.17.0

                                                                                                          +

                                                                                                          Gondi JS SDK - v0.17.2

                                                                                                          Gondi.js

                                                                                                          A JavaScript library for crypto-native lending: borrow, lend & refinance NFTs (non-fungible tokens).

                                                                                                          Table of Contents

                                                                                                          @@ -21,7 +21,7 @@

                                                                                                          Hierarchy

                                                                                                          • EmitLoanArgs
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1027
                                                                                                        • @@ -50,27 +50,27 @@
                                                                                                          Optional
                                                                                                          lenderOfferSignature: `0x${string}`
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1028
                                                                                                        • tokenId: bigint
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1033
                                                                                                        • duration: bigint
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1034
                                                                                                        • principalReceiver?: `0x${string}`
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1035
                                                                                                        • expirationTime?: bigint
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1036
                                                                                                        • @@ -21,7 +21,7 @@

                                                                                                          Hierarchy

                                                                                                          • GondiProps
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:974
                                                                                                        • @@ -41,12 +41,12 @@
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:975
                                                                                                        • apiClient?: ApolloClient<NormalizedCacheObject>
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:976
                                                                                                        • @@ -21,7 +21,7 @@

                                                                                                          Hierarchy

                                                                                                          • ListLoansProps
                                                                                                          +
                                                                                                        • Defined in src/model.ts:99
                                                                                                        • @@ -46,52 +46,52 @@

                                                                                                          Properties

                                                                                                          limit?: number
                                                                                                          +
                                                                                                        • Defined in src/model.ts:100
                                                                                                        • cursor?: null | string
                                                                                                          +
                                                                                                        • Defined in src/model.ts:101
                                                                                                        • borrowers?: `0x${string}`[]
                                                                                                          +
                                                                                                        • Defined in src/model.ts:102
                                                                                                        • collections?: number[]
                                                                                                          +
                                                                                                        • Defined in src/model.ts:103
                                                                                                        • nfts?: number[]
                                                                                                          +
                                                                                                        • Defined in src/model.ts:104
                                                                                                        • statuses?: LoanStatusType[]
                                                                                                          +
                                                                                                        • Defined in src/model.ts:105
                                                                                                        • sortBy?: LoanSortInput
                                                                                                          +
                                                                                                        • Defined in src/model.ts:106
                                                                                                        • terms?: TermsFilter
                                                                                                          +
                                                                                                        • Defined in src/model.ts:107
                                                                                                        • orderByStatuses?: boolean
                                                                                                          +
                                                                                                        • Defined in src/model.ts:108
                                                                                                        • loansCurrencyAddress?: `0x${string}`
                                                                                                          +
                                                                                                        • Defined in src/model.ts:109
                                                                                                        • -

                                                                                                          Gondi JS SDK - v0.17.0

                                                                                                          +

                                                                                                          Gondi JS SDK - v0.17.2

                                                                                                          Index

                                                                                                          @@ -50,7 +50,7 @@

                                                                                                          Theme

                                                                                                          @@ -176,7 +176,7 @@

                                                                                                          Theme

                                                                                                          @@ -16,7 +16,7 @@
                                                                                                        • Types
                                                                                                        • Namespace Types

                                                                                                          +
                                                                                                        • Defined in src/model.ts:1
                                                                                                        • Index

                                                                                                          @@ -48,7 +48,7 @@

                                                                                                          Theme

                                                                                                          @@ -27,7 +27,7 @@
                                                                                                          timestamp
                                                                                                          Optional txHash?: Maybe<Scalars["Hash"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:40
                                                                                                        • @@ -33,7 +33,7 @@
                                                                                                          data
                                                                                                          id: Scalars["String"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:46
                                                                                                        • @@ -45,7 +45,7 @@
                                                                                                          status
                                                                                                          Optional triggerFee?: Maybe<Scalars["BigInt"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:55
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias Auction

                                                                                                          Auction: AuctionV5 | AuctionV6
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:73
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias AuctionV5

                                                                                                          AuctionV5: PlaceBidAbiTypeV5[2]
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:71
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias AuctionV6

                                                                                                          AuctionV6: PlaceBidAbiTypeV6[2]
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:72
                                                                                                        • @@ -39,7 +39,7 @@
                                                                                                          timestamp
                                                                                                          txHash: Scalars["Hash"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:153
                                                                                                        • @@ -33,7 +33,7 @@
                                                                                                          Optional
                                                                                                          Optional erc1155TokenIds?: bigint[]
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1010
                                                                                                        • @@ -61,7 +61,7 @@
                                                                                                          Optional
                                                                                                          wrapperCollections: Collection[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:188
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          collection: {
                                                                                                              __typename?: "Collection";
                                                                                                              contractData: {
                                                                                                                  __typename?: "ContractData";
                                                                                                                  contractAddress: Address;
                                                                                                              };
                                                                                                              wrapperCollections: {
                                                                                                                  __typename?: "Collection";
                                                                                                                  contractData: {
                                                                                                                      __typename?: "ContractData";
                                                                                                                      contractAddress: Address;
                                                                                                                  };
                                                                                                              }[];
                                                                                                          }[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3084
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          Optional collection?: {
                                                                                                              __typename?: "Collection";
                                                                                                              id: string;
                                                                                                          } | null
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3098
                                                                                                        • @@ -90,7 +90,7 @@
                                                                                                          status
                                                                                                          validators: OfferValidator[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:252
                                                                                                        • @@ -53,7 +53,7 @@
                                                                                                          Optional
                                                                                                          Optional signerAddress?: InputMaybe<Scalars["Address"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:291
                                                                                                        • @@ -27,7 +27,7 @@
                                                                                                          acceptedLoans
                                                                                                          consumedCapacity: Scalars["BigInt"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:310
                                                                                                        • @@ -59,7 +59,7 @@
                                                                                                          signature
                                                                                                          Optional signerAddress?: InputMaybe<Scalars["Address"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:342
                                                                                                        • @@ -81,7 +81,7 @@
                                                                                                          Optional
                                                                                                          Optional totalVolume4m?: Maybe<Scalars["Float"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:381
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          collections: {
                                                                                                              __typename?: "Collection";
                                                                                                              id: string;
                                                                                                          }[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3091
                                                                                                        • @@ -39,7 +39,7 @@
                                                                                                          hasNextPage
                                                                                                          edges: {
                                                                                                              __typename?: "CollectionEdge";
                                                                                                              node: {
                                                                                                                  __typename?: "Collection";
                                                                                                                  id: string;
                                                                                                                  name?: string | null;
                                                                                                                  slug: string;
                                                                                                                  description?: string | null;
                                                                                                                  discordUrl?: string | null;
                                                                                                                  twitterUsername?: string | null;
                                                                                                                  externalUrl?: string | null;
                                                                                                                  collectionUrl?: string | null;
                                                                                                                  verified: boolean;
                                                                                                                  wrapperCollections: {
                                                                                                                      __typename?: "Collection";
                                                                                                                      contractData: {
                                                                                                                          __typename?: "ContractData";
                                                                                                                          contractAddress: Address;
                                                                                                                      };
                                                                                                                  }[];
                                                                                                                  image?: {
                                                                                                                      __typename?: "Asset";
                                                                                                                      cacheUrl?: string | null;
                                                                                                                  } | null;
                                                                                                                  bannerImage?: {
                                                                                                                      __typename?: "Asset";
                                                                                                                      cacheUrl?: string | null;
                                                                                                                  } | null;
                                                                                                                  contractData: {
                                                                                                                      __typename?: "ContractData";
                                                                                                                      blockchain: string;
                                                                                                                      contractAddress: Address;
                                                                                                                      createdDate: Date;
                                                                                                                      creatorAddress?: Address | null;
                                                                                                                  };
                                                                                                                  statistics: {
                                                                                                                      __typename?: "CollectionStatistics";
                                                                                                                      floorPrice7d?: number | null;
                                                                                                                      floorPrice30d?: number | null;
                                                                                                                      totalVolume?: number | null;
                                                                                                                      totalVolume1y?: number | null;
                                                                                                                      totalVolume3m?: number | null;
                                                                                                                      totalVolume1m?: number | null;
                                                                                                                      totalVolume1w?: number | null;
                                                                                                                      totalLoanVolume: bigint;
                                                                                                                      totalLoanVolume1w: bigint;
                                                                                                                      totalLoanVolume1m: bigint;
                                                                                                                      totalLoanVolume3m: bigint;
                                                                                                                      totalLoanVolume1y: bigint;
                                                                                                                      numberOfPricedNfts: number;
                                                                                                                      nftsCount?: number | null;
                                                                                                                      percentageInOutstandingLoans: number;
                                                                                                                      repaymentRate: number;
                                                                                                                      numberOfOffers: number;
                                                                                                                      floorPrice?: {
                                                                                                                          __typename?: "CurrencyAmount";
                                                                                                                          amount: number;
                                                                                                                          currency: {
                                                                                                                              __typename?: "Currency";
                                                                                                                              address: Address;
                                                                                                                              decimals: number;
                                                                                                                          };
                                                                                                                      } | null;
                                                                                                                      bestOffer?: {
                                                                                                                          __typename?: "CurrencyAmount";
                                                                                                                          amount: number;
                                                                                                                          currency: {
                                                                                                                              __typename?: "Currency";
                                                                                                                              address: Address;
                                                                                                                              decimals: number;
                                                                                                                          };
                                                                                                                      } | null;
                                                                                                                  };
                                                                                                              };
                                                                                                          }[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3077
                                                                                                        • @@ -35,7 +35,7 @@
                                                                                                          id
                                                                                                        • standard: Scalars["String"]
                                                                                                        • +
                                                                                                        • Defined in src/generated/graphql/index.ts:464
                                                                                                        • @@ -29,7 +29,7 @@
                                                                                                          amounts
                                                                                                          standard: NftStandard
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:997
                                                                                                        • @@ -35,7 +35,7 @@
                                                                                                          id
                                                                                                        • symbol: Scalars["String"]
                                                                                                        • +
                                                                                                        • Defined in src/generated/graphql/index.ts:474
                                                                                                        • @@ -27,7 +27,7 @@
                                                                                                          amount
                                                                                                          currency: Currency
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:484
                                                                                                        • @@ -29,7 +29,7 @@
                                                                                                          tokenIds
                                                                                                          amounts: bigint[]
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1003
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias DepositERC721sArgs

                                                                                                          DepositERC721sArgs: Omit<DepositERC1155sArgs, "amounts">
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1009
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias Erc721Or1155ABI

                                                                                                          Erc721Or1155ABI: typeof erc721ABI | typeof erc1155Abi
                                                                                                          +
                                                                                                        • Defined in src/contracts/index.ts:30
                                                                                                        • @@ -23,7 +23,7 @@

                                                                                                          Type Parameters

                                                                                                        • T extends {
                                                                                                              [key: string]: unknown;
                                                                                                          }

                                                                                                        • +
                                                                                                        • Defined in src/generated/graphql/index.ts:9
                                                                                                        • @@ -52,7 +52,7 @@
                                                                                                          Optional
                                                                                                          contractAddress: Address
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2978
                                                                                                        • @@ -47,7 +47,7 @@
                                                                                                          tokenId
                                                                                                          Optional collection?: {
                                                                                                              __typename?: "Collection";
                                                                                                              contractData: {
                                                                                                                  __typename?: "ContractData";
                                                                                                                  contractAddress: Address;
                                                                                                              };
                                                                                                          } | null
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3043
                                                                                                        • @@ -49,7 +49,7 @@
                                                                                                          tokenId
                                                                                                          Optional collection?: {
                                                                                                              __typename?: "Collection";
                                                                                                              contractData: {
                                                                                                                  __typename?: "ContractData";
                                                                                                                  contractAddress: Address;
                                                                                                              };
                                                                                                          } | null
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3000
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias HexString

                                                                                                          HexString: `0x${string}`
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:75
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          hideOffer: {
                                                                                                              __typename?: "CollectionOffer";
                                                                                                              id: string;
                                                                                                          } | {
                                                                                                              __typename?: "SingleNFTOffer";
                                                                                                              id: string;
                                                                                                          }
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2993
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          hideOrder: {
                                                                                                              __typename?: "CollectionOrder";
                                                                                                              id: string;
                                                                                                          } | {
                                                                                                              __typename?: "SellAndRepayOrder";
                                                                                                              id: string;
                                                                                                          } | {
                                                                                                              __typename?: "SingleNFTOrder";
                                                                                                              id: string;
                                                                                                          }
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3022
                                                                                                        • @@ -30,7 +30,7 @@
                                                                                                          Optional
                                                                                                          id: string
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3051
                                                                                                        • @@ -23,7 +23,7 @@

                                                                                                          Type Parameters

                                                                                                        • T

                                                                                                        • +
                                                                                                        • Defined in src/generated/graphql/index.ts:8
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          Optional min?: InputMaybe<Scalars["Float"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:541
                                                                                                        • @@ -31,7 +31,7 @@
                                                                                                          shouldAccept
                                                                                                          walletAddress: Scalars["String"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:546
                                                                                                        • @@ -39,7 +39,7 @@
                                                                                                          hasNextPage
                                                                                                          edges: {
                                                                                                              __typename?: "ListingEdge";
                                                                                                              node: {
                                                                                                                  __typename?: "Listing";
                                                                                                                  id: string;
                                                                                                                  marketplaceName: MarketplaceEnum;
                                                                                                                  createdDate: Date;
                                                                                                                  desiredDuration?: number | null;
                                                                                                                  desiredPrincipalAddress?: Address | null;
                                                                                                                  user: {
                                                                                                                      __typename?: "User";
                                                                                                                      walletAddress: Address;
                                                                                                                  };
                                                                                                                  nft: {
                                                                                                                      __typename?: "NFT";
                                                                                                                      id: string;
                                                                                                                      tokenId: bigint;
                                                                                                                      collection?: {
                                                                                                                          __typename?: "Collection";
                                                                                                                          id: string;
                                                                                                                          slug: string;
                                                                                                                          contractData: {
                                                                                                                              __typename?: "ContractData";
                                                                                                                              contractAddress: Address;
                                                                                                                          };
                                                                                                                      } | null;
                                                                                                                  };
                                                                                                              };
                                                                                                          }[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3109
                                                                                                        • @@ -41,7 +41,7 @@
                                                                                                          hasNextPage
                                                                                                          edges: {
                                                                                                              __typename?: "MultiSourceLoanEdge";
                                                                                                              node: {
                                                                                                                  __typename?: "MultiSourceLoan";
                                                                                                                  id: string;
                                                                                                                  address: Address;
                                                                                                                  loanId: number;
                                                                                                                  timestamp: Date;
                                                                                                                  txHash: Hash;
                                                                                                                  indexInBlock: number;
                                                                                                                  borrowerAddress: Address;
                                                                                                                  principalAddress: Address;
                                                                                                                  startTime: Date;
                                                                                                                  duration: bigint;
                                                                                                                  status: string;
                                                                                                                  principalAmount: bigint;
                                                                                                                  blendedAprBps: number;
                                                                                                                  totalOriginationFee: bigint;
                                                                                                                  protocolFee: bigint;
                                                                                                                  offer: {
                                                                                                                      __typename?: "CollectionOffer";
                                                                                                                      offerId: bigint;
                                                                                                                      signerAddress?: Address | null;
                                                                                                                  } | {
                                                                                                                      __typename?: "SingleNFTOffer";
                                                                                                                      offerId: bigint;
                                                                                                                      signerAddress?: Address | null;
                                                                                                                  };
                                                                                                                  currency: {
                                                                                                                      __typename?: "Currency";
                                                                                                                      symbol: string;
                                                                                                                      decimals: number;
                                                                                                                      address: Address;
                                                                                                                  };
                                                                                                                  repaidActivity?: {
                                                                                                                      __typename?: "LoanRepaid";
                                                                                                                      totalInterest: bigint;
                                                                                                                      timestamp: Date;
                                                                                                                  } | null;
                                                                                                                  nft: {
                                                                                                                      __typename?: "NFT";
                                                                                                                      id: string;
                                                                                                                      name?: string | null;
                                                                                                                      tokenId: bigint;
                                                                                                                      nftId: string;
                                                                                                                      owner?: Address | null;
                                                                                                                      image?: {
                                                                                                                          __typename?: "Asset";
                                                                                                                          data: string;
                                                                                                                          cacheUrl?: string | null;
                                                                                                                          contentTypeMime: string;
                                                                                                                          accessTypeName: string;
                                                                                                                      } | null;
                                                                                                                      collection?: {
                                                                                                                          __typename?: "Collection";
                                                                                                                          id: string;
                                                                                                                          slug: string;
                                                                                                                          name?: string | null;
                                                                                                                          nftsCount?: number | null;
                                                                                                                          contractData: {
                                                                                                                              __typename?: "ContractData";
                                                                                                                              contractAddress: Address;
                                                                                                                          };
                                                                                                                      } | null;
                                                                                                                  };
                                                                                                                  sources: {
                                                                                                                      __typename?: "Source";
                                                                                                                      id: string;
                                                                                                                      loanId: string;
                                                                                                                      originationFee: bigint;
                                                                                                                      principalAmount: bigint;
                                                                                                                      lenderAddress: string;
                                                                                                                      accruedInterest: bigint;
                                                                                                                      aprBps: bigint;
                                                                                                                      startTime: Date;
                                                                                                                  }[];
                                                                                                              };
                                                                                                          }[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3125
                                                                                                        • @@ -30,7 +30,7 @@
                                                                                                          Optional
                                                                                                          id: string
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2964
                                                                                                        • @@ -39,7 +39,7 @@
                                                                                                          hasNextPage
                                                                                                          edges: {
                                                                                                              __typename?: "OfferEdge";
                                                                                                              node: {
                                                                                                                  __typename?: "CollectionOffer";
                                                                                                                  id: string;
                                                                                                                  offerId: bigint;
                                                                                                                  lenderAddress?: Address | null;
                                                                                                                  borrowerAddress?: Address | null;
                                                                                                                  signerAddress?: Address | null;
                                                                                                                  contractAddress: Address;
                                                                                                                  requiresLiquidation?: boolean | null;
                                                                                                                  principalAddress: Address;
                                                                                                                  principalAmount: bigint;
                                                                                                                  aprBps: bigint;
                                                                                                                  fee: bigint;
                                                                                                                  capacity: bigint;
                                                                                                                  expirationTime: bigint;
                                                                                                                  duration: bigint;
                                                                                                                  status: string;
                                                                                                                  offerHash?: Hash | null;
                                                                                                                  signature?: Hex | null;
                                                                                                                  createdDate?: Date | null;
                                                                                                                  repayment: bigint;
                                                                                                                  hidden?: boolean | null;
                                                                                                                  maxSeniorRepayment: bigint;
                                                                                                                  collection: {
                                                                                                                      __typename?: "Collection";
                                                                                                                      id: string;
                                                                                                                      slug: string;
                                                                                                                      contractData: {
                                                                                                                          __typename?: "ContractData";
                                                                                                                          contractAddress: Address;
                                                                                                                      };
                                                                                                                  };
                                                                                                                  currency: {
                                                                                                                      __typename?: "Currency";
                                                                                                                      symbol: string;
                                                                                                                      decimals: number;
                                                                                                                      address: Address;
                                                                                                                  };
                                                                                                                  validators: {
                                                                                                                      __typename?: "OfferValidator";
                                                                                                                      arguments: Hex;
                                                                                                                      validator: Address;
                                                                                                                  }[];
                                                                                                              } | {
                                                                                                                  __typename?: "SingleNFTOffer";
                                                                                                                  id: string;
                                                                                                                  offerId: bigint;
                                                                                                                  lenderAddress?: Address | null;
                                                                                                                  borrowerAddress?: Address | null;
                                                                                                                  signerAddress?: Address | null;
                                                                                                                  contractAddress: Address;
                                                                                                                  requiresLiquidation?: boolean | null;
                                                                                                                  principalAddress: Address;
                                                                                                                  principalAmount: bigint;
                                                                                                                  aprBps: bigint;
                                                                                                                  fee: bigint;
                                                                                                                  capacity: bigint;
                                                                                                                  expirationTime: bigint;
                                                                                                                  duration: bigint;
                                                                                                                  status: string;
                                                                                                                  offerHash?: Hash | null;
                                                                                                                  signature?: Hex | null;
                                                                                                                  createdDate?: Date | null;
                                                                                                                  repayment: bigint;
                                                                                                                  hidden?: boolean | null;
                                                                                                                  maxSeniorRepayment: bigint;
                                                                                                                  nft: {
                                                                                                                      __typename?: "NFT";
                                                                                                                      id: string;
                                                                                                                      tokenId: bigint;
                                                                                                                      collection?: {
                                                                                                                          __typename?: "Collection";
                                                                                                                          id: string;
                                                                                                                          slug: string;
                                                                                                                          contractData: {
                                                                                                                              __typename?: "ContractData";
                                                                                                                              contractAddress: Address;
                                                                                                                          };
                                                                                                                      } | null;
                                                                                                                  };
                                                                                                                  currency: {
                                                                                                                      __typename?: "Currency";
                                                                                                                      symbol: string;
                                                                                                                      decimals: number;
                                                                                                                      address: Address;
                                                                                                                  };
                                                                                                                  validators: {
                                                                                                                      __typename?: "OfferValidator";
                                                                                                                      arguments: Hex;
                                                                                                                      validator: Address;
                                                                                                                  }[];
                                                                                                              };
                                                                                                          }[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3168
                                                                                                        • @@ -39,7 +39,7 @@
                                                                                                          nft
                                                                                                          user: User
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:554
                                                                                                        • @@ -64,7 +64,7 @@
                                                                                                          timestamp
                                                                                                          txHash: Scalars["Hash"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:579
                                                                                                        • @@ -43,7 +43,7 @@
                                                                                                          timestamp
                                                                                                          txHash: Scalars["Hash"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:611
                                                                                                        • @@ -31,7 +31,7 @@
                                                                                                          loanId
                                                                                                          timestamp: Scalars["DateTime"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:721
                                                                                                        • @@ -47,7 +47,7 @@
                                                                                                          totalInterest
                                                                                                          txHash: Scalars["Hash"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:881
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          field
                                                                                                          order: Ordering
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:939
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias LoanToMslLoanType

                                                                                                          LoanToMslLoanType: Optional<LoanV4, "nftCollateralAddress"> | Optional<LoanV5, "nftCollateralAddress"> | Optional<LoanV6, "nftCollateralAddress">
                                                                                                          +
                                                                                                        • Defined in src/utils/loan.ts:25
                                                                                                        • @@ -23,7 +23,7 @@

                                                                                                          Type declaration

                                                                                                        • contractAddress: Address
                                                                                                        • +
                                                                                                        • Defined in src/blockchain.ts:51
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          contractAddress
                                                                                                          startTime: Date | bigint
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:52
                                                                                                        • @@ -27,7 +27,7 @@
                                                                                                          startTime
                                                                                                          contractStartTime: Date | bigint
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:56
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias MakeOfferType

                                                                                                          MakeOfferType: Omit<Awaited<ReturnType<Gondi["makeSingleNftOffer"]>>, "nftId"> | Omit<Awaited<ReturnType<Gondi["makeCollectionOffer"]>>, "collectionId">
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:979
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          renegotiation
                                                                                                          contractAddress: Address
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:988
                                                                                                        • @@ -23,7 +23,7 @@

                                                                                                          Type declaration

                                                                                                        • maxSeniorRepayment: Exclude<SingleNftOfferInput["maxSeniorRepayment"], null | undefined>
                                                                                                        • +
                                                                                                        • Defined in src/model.ts:21
                                                                                                        • @@ -23,7 +23,7 @@

                                                                                                          Type Parameters

                                                                                                        • T

                                                                                                        • +
                                                                                                        • Defined in src/generated/graphql/index.ts:7
                                                                                                        • @@ -90,7 +90,7 @@
                                                                                                          totalOriginationFee
                                                                                                          txHash: Scalars["Hash"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1000
                                                                                                        • @@ -49,7 +49,7 @@
                                                                                                          sources
                                                                                                          startTime: Scalars["DateTime"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1052
                                                                                                        • @@ -69,7 +69,7 @@
                                                                                                          wrappedCount
                                                                                                          Optional wrapsNfts?: Maybe<Nft[]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1237
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          Optional nft?: {
                                                                                                              __typename?: "NFT";
                                                                                                              id: string;
                                                                                                          } | null
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3133
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          Optional nft?: {
                                                                                                              __typename?: "NFT";
                                                                                                              id: string;
                                                                                                          } | null
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3141
                                                                                                        • @@ -43,7 +43,7 @@
                                                                                                          Optional
                                                                                                          tokenId: Scalars["BigInt"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1277
                                                                                                        • @@ -31,7 +31,7 @@
                                                                                                          numberOfOffers
                                                                                                          Optional topTraitFloorPrice?: Maybe<CurrencyAmount>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1337
                                                                                                        • @@ -23,7 +23,7 @@

                                                                                                          Type declaration

                                                                                                        • id: Scalars["String"]
                                                                                                        • +
                                                                                                        • Defined in src/generated/graphql/index.ts:1355
                                                                                                        • @@ -84,7 +84,7 @@
                                                                                                          status
                                                                                                          validators: OfferValidator[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1393
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias OfferFromExecutionOffer

                                                                                                          OfferFromExecutionOffer: OptionalNullable<MakeOfferType, "borrowerAddress" | "lenderAddress" | "offerHash" | "signature">
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:983
                                                                                                        • @@ -31,7 +31,7 @@
                                                                                                          offerId
                                                                                                          validator: Scalars["Address"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1469
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          arguments
                                                                                                          validator: Scalars["Address"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1477
                                                                                                        • @@ -29,7 +29,7 @@
                                                                                                          order
                                                                                                          Optional principalOfInterest?: InputMaybe<Scalars["BigInt"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1500
                                                                                                        • @@ -25,7 +25,7 @@

                                                                                                          T

                                                                                                        • K extends keyof T

                                                                                                        • +
                                                                                                        • Defined in src/utils/types.ts:1
                                                                                                        • @@ -25,7 +25,7 @@

                                                                                                          T

                                                                                                        • K extends keyof T

                                                                                                        • +
                                                                                                        • Defined in src/utils/types.ts:2
                                                                                                        • @@ -63,7 +63,7 @@
                                                                                                          timestamp
                                                                                                          Optional txHash?: Maybe<Scalars["Hash"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:1507
                                                                                                        • @@ -39,7 +39,7 @@
                                                                                                          hasNextPage
                                                                                                          edges: {
                                                                                                              __typename?: "NFTEdge";
                                                                                                              node: {
                                                                                                                  __typename?: "NFT";
                                                                                                                  id: string;
                                                                                                                  tokenId: bigint;
                                                                                                                  price?: bigint | null;
                                                                                                                  priceCurrencyAddress?: string | null;
                                                                                                                  collection?: {
                                                                                                                      __typename?: "Collection";
                                                                                                                      id: string;
                                                                                                                      contractData: {
                                                                                                                          __typename?: "ContractData";
                                                                                                                          contractAddress: Address;
                                                                                                                      };
                                                                                                                      wrapperCollections: {
                                                                                                                          __typename?: "Collection";
                                                                                                                          contractData: {
                                                                                                                              __typename?: "ContractData";
                                                                                                                              contractAddress: Address;
                                                                                                                          };
                                                                                                                      }[];
                                                                                                                  } | null;
                                                                                                                  activeLoan?: {
                                                                                                                      __typename?: "MultiSourceLoan";
                                                                                                                      id: string;
                                                                                                                  } | null;
                                                                                                                  statistics: {
                                                                                                                      __typename?: "NftStatistics";
                                                                                                                      lastSale?: {
                                                                                                                          __typename?: "Sale";
                                                                                                                          order: {
                                                                                                                              __typename?: "CollectionOrder";
                                                                                                                              price: bigint;
                                                                                                                              currency: {
                                                                                                                                  __typename?: "Currency";
                                                                                                                                  address: Address;
                                                                                                                                  decimals: number;
                                                                                                                              };
                                                                                                                          } | {
                                                                                                                              __typename?: "SellAndRepayOrder";
                                                                                                                              price: bigint;
                                                                                                                              currency: {
                                                                                                                                  __typename?: "Currency";
                                                                                                                                  address: Address;
                                                                                                                                  decimals: number;
                                                                                                                              };
                                                                                                                          } | {
                                                                                                                              __typename?: "SingleNFTOrder";
                                                                                                                              price: bigint;
                                                                                                                              currency: {
                                                                                                                                  __typename?: "Currency";
                                                                                                                                  address: Address;
                                                                                                                                  decimals: number;
                                                                                                                              };
                                                                                                                          };
                                                                                                                      } | null;
                                                                                                                      topTraitFloorPrice?: {
                                                                                                                          __typename?: "CurrencyAmount";
                                                                                                                          amount: number;
                                                                                                                          currency: {
                                                                                                                              __typename?: "Currency";
                                                                                                                              address: Address;
                                                                                                                              decimals: number;
                                                                                                                          };
                                                                                                                      } | null;
                                                                                                                  };
                                                                                                              };
                                                                                                          }[]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3151
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias PlaceBidAbiTypeV5

                                                                                                          PlaceBidAbiTypeV5: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof auctionLoanLiquidatorABI, "placeBid">["inputs"]>
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:44
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias PlaceBidAbiTypeV6

                                                                                                          PlaceBidAbiTypeV6: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof auctionLoanLiquidatorAbi, "placeBid">["inputs"]>
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:47
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          wallet: Wallet
                                                                                                          +
                                                                                                        • Defined in src/api/index.ts:19
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          result: {
                                                                                                              __typename?: "SellAndRepayOrder";
                                                                                                              id: string;
                                                                                                              status: string;
                                                                                                              signature: Hex;
                                                                                                              repaymentCalldata: Hex;
                                                                                                              cancelCalldata: Hex;
                                                                                                              marketPlaceAddress: Address;
                                                                                                          } | {
                                                                                                              __typename?: "SignatureRequest";
                                                                                                              key: string;
                                                                                                              typedData: {
                                                                                                                  __typename?: "TypedData";
                                                                                                                  types: object;
                                                                                                                  primaryType: string;
                                                                                                                  domain: object;
                                                                                                                  message: object;
                                                                                                              };
                                                                                                          }
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3029
                                                                                                        • @@ -47,7 +47,7 @@
                                                                                                          Optional
                                                                                                          Optional trancheIndex?: InputMaybe<Scalars["BigInt"][]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2238
                                                                                                        • @@ -37,7 +37,7 @@
                                                                                                          id
                                                                                                        • loanId: Scalars["String"]
                                                                                                        • +
                                                                                                        • Defined in src/generated/graphql/index.ts:2254
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias RepayAbiTypeV4

                                                                                                          RepayAbiTypeV4: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof multiSourceLoanABI, "repayLoan">["inputs"]>
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:14
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias RepayAbiTypeV5

                                                                                                          RepayAbiTypeV5: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof multiSourceLoanABI, "repayLoan">["inputs"]>
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:17
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias RepayAbiTypeV6

                                                                                                          RepayAbiTypeV6: AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof multiSourceLoanAbi, "repayLoan">["inputs"]>
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:20
                                                                                                        • @@ -37,7 +37,7 @@
                                                                                                          timestamp
                                                                                                          Optional txHash?: Maybe<Scalars["Hash"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2279
                                                                                                        • @@ -44,7 +44,7 @@
                                                                                                          Optional
                                                                                                          contractAddress: Address
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2985
                                                                                                        • @@ -32,7 +32,7 @@
                                                                                                          id
                                                                                                        • status: string
                                                                                                        • +
                                                                                                        • Defined in src/generated/graphql/index.ts:3059
                                                                                                        • @@ -41,7 +41,7 @@
                                                                                                          tokenId
                                                                                                          Optional collection?: {
                                                                                                              __typename?: "Collection";
                                                                                                              contractData: {
                                                                                                                  __typename?: "ContractData";
                                                                                                                  contractAddress: Address;
                                                                                                              };
                                                                                                          } | null
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3007
                                                                                                        • @@ -50,7 +50,7 @@
                                                                                                          SignatureVoid: any
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:13
                                                                                                        • @@ -79,7 +79,7 @@
                                                                                                          timestamp
                                                                                                          Optional txHash?: Maybe<Scalars["Hash"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2290
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          showOrder: {
                                                                                                              __typename?: "CollectionOrder";
                                                                                                              id: string;
                                                                                                          } | {
                                                                                                              __typename?: "SellAndRepayOrder";
                                                                                                              id: string;
                                                                                                          } | {
                                                                                                              __typename?: "SingleNFTOrder";
                                                                                                              id: string;
                                                                                                          }
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3036
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias Signature

                                                                                                          Signature: HexString
                                                                                                          +
                                                                                                        • Defined in src/blockchain.ts:76
                                                                                                        • @@ -53,7 +53,7 @@
                                                                                                          Optional
                                                                                                          Optional trancheIndex?: InputMaybe<Scalars["BigInt"][]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2330
                                                                                                        • @@ -53,7 +53,7 @@
                                                                                                          Optional
                                                                                                          Optional signerAddress?: InputMaybe<Scalars["Address"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2403
                                                                                                        • @@ -59,7 +59,7 @@
                                                                                                          signature
                                                                                                          Optional signerAddress?: InputMaybe<Scalars["Address"]>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2449
                                                                                                        • @@ -65,7 +65,7 @@
                                                                                                          Optional
                                                                                                          startTime: Scalars["DateTime"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2471
                                                                                                        • @@ -43,7 +43,7 @@
                                                                                                          Optional
                                                                                                          startTime: Scalars["DateTime"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2496
                                                                                                        • @@ -27,7 +27,7 @@
                                                                                                          collection
                                                                                                          value: Scalars["BigInt"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2565
                                                                                                        • @@ -35,7 +35,7 @@
                                                                                                          Optional
                                                                                                          Optional remainingTime?: InputMaybe<Interval>
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2571
                                                                                                        • @@ -35,7 +35,7 @@
                                                                                                          id
                                                                                                        • loanId: Scalars["String"]
                                                                                                        • +
                                                                                                        • Defined in src/generated/graphql/index.ts:2587
                                                                                                        • @@ -31,7 +31,7 @@
                                                                                                          type
                                                                                                          value: Scalars["String"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2610
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          Optional
                                                                                                          showOffer: {
                                                                                                              __typename?: "CollectionOffer";
                                                                                                              id: string;
                                                                                                          } | {
                                                                                                              __typename?: "SingleNFTOffer";
                                                                                                              id: string;
                                                                                                          }
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3015
                                                                                                        • @@ -30,7 +30,7 @@
                                                                                                          Optional
                                                                                                          id: string
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:3067
                                                                                                        • @@ -30,7 +30,7 @@
                                                                                                          Optional
                                                                                                          id: string
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2971
                                                                                                        • @@ -63,7 +63,7 @@
                                                                                                          Optional
                                                                                                          walletAddress: Scalars["Address"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2647
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          onlyOrExclude
                                                                                                          userId: Scalars["Int"]
                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2671
                                                                                                        • @@ -135,7 +135,7 @@
                                                                                                          wavgRepaidAprByColle

                                                                                                          Deprecated

                                                                                                          Use get_sources_statistics_by_collection instead.

                                                                                                          +
                                                                                                        • Defined in src/generated/graphql/index.ts:2676
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias Wallet

                                                                                                          Wallet: WalletClient<Transport, Chain, Account>
                                                                                                          +
                                                                                                        • Defined in src/contracts/index.ts:22
                                                                                                        • @@ -33,7 +33,7 @@
                                                                                                          Optional
                                                                                                          tokenId: bigint
                                                                                                          +
                                                                                                        • Defined in src/gondi.ts:1019
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          signature
                                                                                                          nftCollateralTokenId: 0n
                                                                                                          +
                                                                                                        • Defined in src/model.ts:54
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias CollectionOfferInput

                                                                                                          CollectionOfferInput: Optional<CollectionOfferInput, "borrowerAddress" | "lenderAddress" | "signerAddress" | "offerValidators" | "contractAddress"> & MaxSeniorRepaymentArg
                                                                                                          +
                                                                                                        • Defined in src/model.ts:41
                                                                                                        • @@ -31,7 +31,7 @@
                                                                                                          Optional
                                                                                                          Optional cursor?: string | null
                                                                                                          +
                                                                                                        • Defined in src/model.ts:112
                                                                                                        • @@ -44,7 +44,7 @@
                                                                                                          Optional
                                                                                                          Optional status?: OfferStatus[]
                                                                                                          +
                                                                                                        • Defined in src/model.ts:84
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias NftStandard

                                                                                                          NftStandard: "ERC721" | "ERC1155"
                                                                                                          +
                                                                                                        • Defined in src/model.ts:120
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias RenegotiationInput

                                                                                                          RenegotiationInput: Optional<RenegotiationOfferInput, "lenderAddress" | "signerAddress"> & ({
                                                                                                              trancheIndex: Exclude<RenegotiationOfferInput["trancheIndex"], null | undefined>;
                                                                                                              targetPrincipal?: undefined;
                                                                                                          } | {
                                                                                                              trancheIndex?: undefined;
                                                                                                              targetPrincipal: Exclude<RenegotiationOfferInput["targetPrincipal"], null | undefined>;
                                                                                                          })
                                                                                                          +
                                                                                                        • Defined in src/model.ts:59
                                                                                                        • @@ -23,7 +23,7 @@

                                                                                                          Type declaration

                                                                                                        • signature: Signature
                                                                                                        • +
                                                                                                        • Defined in src/model.ts:76
                                                                                                        • @@ -23,7 +23,7 @@

                                                                                                          Type declaration

                                                                                                        • signature: Hash
                                                                                                        • +
                                                                                                        • Defined in src/model.ts:36
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias SingleNftOfferInput

                                                                                                          SingleNftOfferInput: Optional<SingleNftOfferInput, "borrowerAddress" | "lenderAddress" | "signerAddress" | "offerValidators" | "contractAddress"> & MaxSeniorRepaymentArg
                                                                                                          +
                                                                                                        • Defined in src/model.ts:25
                                                                                                        • @@ -23,7 +23,7 @@

                                                                                                          Type declaration

                                                                                                        • nftCollateralAddress: Address
                                                                                                        • +
                                                                                                        • Defined in src/model.ts:47
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Type alias UnsignedRenegotiationOffer

                                                                                                          UnsignedRenegotiationOffer: Omit<SignedRenegotiationOfferInput, "signature">
                                                                                                          +
                                                                                                        • Defined in src/model.ts:74
                                                                                                        • @@ -25,7 +25,7 @@
                                                                                                          nftCollateralAddress
                                                                                                          nftCollateralTokenId: bigint
                                                                                                          +
                                                                                                        • Defined in src/model.ts:31
                                                                                                        • @@ -17,7 +17,7 @@

                                                                                                          Variable FULFILLEDConst

                                                                                                          FULFILLED: "fulfilled" = ...
                                                                                                          +
                                                                                                        • Defined in src/utils/promises.ts:1
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable auctionLoanLiquidatorABIConst

                                                                                                          auctionLoanLiquidatorABI: readonly [{
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "liquidationDistributor";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AddressZeroError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AuctionAlreadyInProgressError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expiration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              name: "AuctionNotOverError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expiration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              name: "AuctionOverError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CouldNotModifyValidLoansError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidHashAuctionError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidTriggerFee";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "LoanNotAcceptedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_minBid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "MinBidError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "NFTNotOwnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NoBidsError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ZeroAddressError";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "auctionContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "asset";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "proceeds";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "settler";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AuctionSettled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "newBidder";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "bid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "BidPlaced";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "liquidationDistributor";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LiquidationDistributorUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanContractAdded";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanContractRemoved";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanLiquidationStarted";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "TriggerFeeUpdated";
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MAX_TRIGGER_FEE";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MIN_INCREMENT_BPS";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "addLoanContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getAuctionHash";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLiquidationDistributor";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getTriggerFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getValidLoanContracts";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_asset";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_duration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }, {
                                                                                                                  name: "_originator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "liquidateLoan";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_bid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "placeBid";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "removeLoanContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "settleAuction";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "__liquidationDistributor";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "updateLiquidationDistributor";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "updateTriggerFee";
                                                                                                              outputs: readonly [];
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v5.ts:199
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable auctionLoanLiquidatorABIConst

                                                                                                          auctionLoanLiquidatorABI: readonly [{
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AuctionAlreadyInProgressError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "AuctionNotExistsError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expiration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              name: "AuctionNotOverError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expiration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              name: "AuctionOverError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidTriggerFee";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "LoanNotAcceptedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_minBid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "MinBidError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "NFTNotOwnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NoBidsError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ZeroAddressError";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "auctionContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "asset";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "highestBid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "settler";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AuctionSettled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "auctionContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "newBidder";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "bid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "BidPlaced";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanContractAdded";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanContractRemoved";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "duration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "asset";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanLiquidationStarted";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "TriggerFeeUpdated";
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MAX_TRIGGER_FEE";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MIN_INCREMENT_BPS";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "addLoanContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getAuction";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct AuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getTriggerFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getValidLoanContracts";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_asset";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_duration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }, {
                                                                                                                  name: "_originator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "liquidateLoan";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_bid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "placeBid";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "removeLoanContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "settleAuction";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "updateTriggerFee";
                                                                                                              outputs: readonly [];
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v4.ts:114
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable auctionLoanLiquidatorAbiConst

                                                                                                          auctionLoanLiquidatorAbi: readonly [{
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "liquidationDistributor";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "maxExtension";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AddressZeroError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AuctionAlreadyInProgressError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expiration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              name: "AuctionNotOverError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expiration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              name: "AuctionOverError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CouldNotModifyValidLoansError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidHashAuctionError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidTriggerFee";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "LoanNotAcceptedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_minBid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "MinBidError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "NFTNotOwnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NoBidsError";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "asset";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "proceeds";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "settler";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AuctionSettled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "newBidder";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "bid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "BidPlaced";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "liquidationDistributor";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LiquidationDistributorUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanContractAdded";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanContractRemoved";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "minBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanLiquidationStarted";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "TriggerFeeUpdated";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MAX_TRIGGER_FEE";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MIN_INCREMENT_BPS";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "addLoanContract";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_nftAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getAuctionHash";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLiquidationDistributor";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getMaxExtension";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getTriggerFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getValidLoanContracts";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_nftAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_asset";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_duration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }, {
                                                                                                                  name: "_minBid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_originator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "liquidateLoan";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_nftAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "minBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_bid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "placeBid";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "minBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "removeLoanContract";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "minBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "settleAuction";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "__liquidationDistributor";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "updateLiquidationDistributor";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "updateTriggerFee";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v6.ts:113
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable auctionWithBuyoutLoanLiquidatorAbiConst

                                                                                                          auctionWithBuyoutLoanLiquidatorAbi: readonly [{
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "liquidationDistributor";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "loanManagerRegistry";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "maxExtension";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }, {
                                                                                                                  name: "timeForMainLenderToBuy";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AddressZeroError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AuctionAlreadyInProgressError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expiration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              name: "AuctionNotOverError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expiration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              name: "AuctionOverError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CouldNotModifyValidLoansError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidHashAuctionError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidInputError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidTriggerFee";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "LoanNotAcceptedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_minBid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "MinBidError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "NFTNotOwnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NoBidsError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NotMainLenderError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "timeLimit";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "OptionToBuyExpiredError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "timeLimit";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "OptionToBuyStilValidError";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "asset";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "proceeds";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "settler";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AuctionSettled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "nftAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "largestTrancheIdx";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AuctionSettledWithBuyout";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "newBidder";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "bid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "BidPlaced";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "liquidationDistributor";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LiquidationDistributorUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanContractAdded";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loan";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanContractRemoved";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "minBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanLiquidationStarted";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "timeForMainLenderToBuy";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "TimeForMainLenderToBuyUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "TriggerFeeUpdated";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MAX_TIME_FOR_MAIN_LENDER_TO_BUY";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MAX_TRIGGER_FEE";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MIN_INCREMENT_BPS";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "addLoanContract";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_nftAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getAuctionHash";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLiquidationDistributor";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLoanManagerRegistry";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "contract ILoanManagerRegistry";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getMaxExtension";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getTimeForMainLenderToBuy";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getTriggerFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getValidLoanContracts";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_nftAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_asset";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_duration";
                                                                                                                  internalType: "uint96";
                                                                                                                  type: "uint96";
                                                                                                              }, {
                                                                                                                  name: "_minBid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_originator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "liquidateLoan";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_nftAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "minBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_bid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "placeBid";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "minBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "removeLoanContract";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "__timeForMainLenderToBuy";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "setTimeForMainLenderToBuy";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "minBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "settleAuction";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_nftAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_auction";
                                                                                                                  internalType: "struct IAuctionLoanLiquidator.Auction";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "loanAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "triggerFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "minBid";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "highestBidder";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "asset";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }, {
                                                                                                                      name: "originator";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lastBidTime";
                                                                                                                      internalType: "uint96";
                                                                                                                      type: "uint96";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "settleWithBuyout";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "__liquidationDistributor";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "updateLiquidationDistributor";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "triggerFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "updateTriggerFee";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v6.ts:483
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable erc1155AbiConst

                                                                                                          erc1155Abi: readonly [{
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "balanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owners";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "ids";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "balanceOfBatch";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "balances";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isApprovedForAll";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "ids";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "amounts";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "safeBatchTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "setApprovalForAll";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "interfaceId";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              name: "supportsInterface";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "uri";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ApprovalForAll";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "ids";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amounts";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "TransferBatch";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "TransferSingle";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "value";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "URI";
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v6.ts:12867
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable erc721ABIConst

                                                                                                          erc721ABI: readonly [{
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Approval";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ApprovalForAll";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Transfer";
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "approve";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "balanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getApproved";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isApprovedForAll";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ownerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "setApprovalForAll";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "interfaceId";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              name: "supportsInterface";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "symbol";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "tokenURI";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "transferFrom";
                                                                                                              outputs: readonly [];
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v5.ts:1274
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable multiSourceLoanABIConst

                                                                                                          multiSourceLoanABI: readonly [{
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanLiquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "protocolFee";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "maxSources";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "minLockPeriod";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "delegateRegistry";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "flashActionContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AddressZeroError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "CancelledOrExecutedOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "CancelledRenegotiationOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CannotLiquidateError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ECDSAInvalidSignature";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "length";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ECDSAInvalidSignatureLength";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "s";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                              name: "ECDSAInvalidSignatureS";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ExpiredOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ExpiredRenegotiationOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ExtensionNotAvailableError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_principalAmount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidAmountError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidBorrowerError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCallbackError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCollateralIdError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidDurationError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidLenderError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidLiquidationError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidLoanError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidMethodError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_fraction";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidProtocolFeeError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidRenegotiationOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidSignatureError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidValueError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LengthMismatchError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_liquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "LiquidatorOnlyError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LoanExpiredError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LoanNotDueError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_newMinOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LowOfferIdError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_newMinRenegotiationOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LowRenegotiationOfferIdError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MaxCapacityExceededError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "minLockPeriod";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "MinLockPeriodTooHighError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "i";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "returndata";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "MulticallFailed";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NFTNotReturnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NotStrictlyImprovedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "OnlyBorrowerCallableError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "OnlyLenderCallableError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "OnlyLenderOrBorrowerCallableError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "PartialOfferCannotChangeDurationError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "PartialOfferCannotHaveFeeError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "RefinanceFullError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "minTimestamp";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "SourceCannotBeRefinancedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "sourcePrincipal";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "loanPrincipal";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "TargetPrincipalTooLowError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_pendingProtocolFeeSetTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "TooEarlyError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "sources";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "TooManySourcesError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ZeroDurationError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ZeroInterestError";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AllOffersCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "minRenegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AllRenegotiationOffersCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "borrower";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "BorrowerOfferCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newdelegateRegistry";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "DelegateRegistryUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "delegate";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "value";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "Delegated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newFlashActionContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "FlashActionContractUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "target";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "FlashActionExecuted";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "minimum";
                                                                                                                  internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "interest";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ImprovementMinimumUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newDuration";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LiquidationAuctionDurationUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "liquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LiquidationContractUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "borrower";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanEmitted";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "oldLoanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "newLoanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "_extension";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanExtended";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanForeclosed";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanLiquidated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "oldLoanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "newLoanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanRefinanced";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "totalRepayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanRepaid";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "liquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanSentToLiquidator";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newMax";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "MaxSourcesUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "minLockPeriod";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "MinLockPeriodUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "OfferCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "fee";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ProtocolFeePendingUpdate";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "fee";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ProtocolFeeUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "RenegotiationOfferCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "delegate";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "RevokeDelegate";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "contractAdded";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tax";
                                                                                                                  internalType: "struct WithCallbacks.Taxes";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "buyTax";
                                                                                                                      internalType: "uint128";
                                                                                                                      type: "uint128";
                                                                                                                  }, {
                                                                                                                      name: "sellTax";
                                                                                                                      internalType: "uint128";
                                                                                                                      type: "uint128";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "WhitelistedCallbackContractAdded";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "contractRemoved";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "WhitelistedCallbackContractRemoved";
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "DOMAIN_SEPARATOR";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "FEE_UPDATE_NOTICE";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MAX_PROTOCOL_FEE";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MIN_AUCTION_DURATION";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint48";
                                                                                                                  type: "uint48";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tax";
                                                                                                                  internalType: "struct WithCallbacks.Taxes";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "buyTax";
                                                                                                                      internalType: "uint128";
                                                                                                                      type: "uint128";
                                                                                                                  }, {
                                                                                                                      name: "sellTax";
                                                                                                                      internalType: "uint128";
                                                                                                                      type: "uint128";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "addWhitelistedCallbackContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelAllOffers";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_minRenegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelAllRenegotiationOffers";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelOffer";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_offerIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "cancelOffers";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelRenegotiationOffer";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "cancelRenegotiationOffers";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_delegate";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_rights";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }, {
                                                                                                                  name: "_value";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "delegate";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_executionData";
                                                                                                                  internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "executionData";
                                                                                                                      internalType: "struct IBaseLoan.ExecutionData";
                                                                                                                      type: "tuple";
                                                                                                                      components: readonly [{
                                                                                                                          name: "offer";
                                                                                                                          internalType: "struct IBaseLoan.LoanOffer";
                                                                                                                          type: "tuple";
                                                                                                                          components: readonly [{
                                                                                                                              name: "offerId";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "lender";
                                                                                                                              internalType: "address";
                                                                                                                              type: "address";
                                                                                                                          }, {
                                                                                                                              name: "fee";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "borrower";
                                                                                                                              internalType: "address";
                                                                                                                              type: "address";
                                                                                                                          }, {
                                                                                                                              name: "capacity";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "nftCollateralAddress";
                                                                                                                              internalType: "address";
                                                                                                                              type: "address";
                                                                                                                          }, {
                                                                                                                              name: "nftCollateralTokenId";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "principalAddress";
                                                                                                                              internalType: "address";
                                                                                                                              type: "address";
                                                                                                                          }, {
                                                                                                                              name: "principalAmount";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "aprBps";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "expirationTime";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "duration";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "validators";
                                                                                                                              internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                              type: "tuple[]";
                                                                                                                              components: readonly [{
                                                                                                                                  name: "validator";
                                                                                                                                  internalType: "address";
                                                                                                                                  type: "address";
                                                                                                                              }, {
                                                                                                                                  name: "arguments";
                                                                                                                                  internalType: "bytes";
                                                                                                                                  type: "bytes";
                                                                                                                              }];
                                                                                                                          }];
                                                                                                                      }, {
                                                                                                                          name: "tokenId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "amount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "expirationTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "callbackData";
                                                                                                                          internalType: "bytes";
                                                                                                                          type: "bytes";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "lenderOfferSignature";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }, {
                                                                                                                      name: "borrowerOfferSignature";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "emitLoan";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_target";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "executeFlashAction";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_extension";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "extendLoan";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getCollectionManager";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getCurrencyManager";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getDelegateRegistry";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getFlashActionContract";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getImprovementMinimum";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "interest";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLiquidationAuctionDuration";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint48";
                                                                                                                  type: "uint48";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLiquidator";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getLoanHash";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getMaxSources";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getMinLockPeriod";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanPrincipal";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getMinSourcePrincipal";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getPendingProtocolFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getPendingProtocolFeeSetTime";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getProtocolFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getTotalLoansIssued";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getUsedCapacity";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "isBorrowerOfferCancelled";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "isOfferCancelled";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "isRenegotiationOfferCancelled";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isWhitelistedCallbackContract";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "lenderMinRenegotiationOfferId";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "liquidateLoan";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "loanLiquidated";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "minOfferId";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "payable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes[]";
                                                                                                                  type: "bytes[]";
                                                                                                              }];
                                                                                                              name: "multicall";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "results";
                                                                                                                  internalType: "bytes[]";
                                                                                                                  type: "bytes[]";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationOffer";
                                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "renegotiationId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "targetPrincipal";
                                                                                                                      internalType: "uint256[]";
                                                                                                                      type: "uint256[]";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "aprBps";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "expirationTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "refinanceFull";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationOffer";
                                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "renegotiationId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "targetPrincipal";
                                                                                                                      internalType: "uint256[]";
                                                                                                                      type: "uint256[]";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "aprBps";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "expirationTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "refinancePartial";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "removeWhitelistedCallbackContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_repaymentData";
                                                                                                                  internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "data";
                                                                                                                      internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                                                                      type: "tuple";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "callbackData";
                                                                                                                          internalType: "bytes";
                                                                                                                          type: "bytes";
                                                                                                                      }, {
                                                                                                                          name: "shouldDelegate";
                                                                                                                          internalType: "bool";
                                                                                                                          type: "bool";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "loan";
                                                                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                      type: "tuple";
                                                                                                                      components: readonly [{
                                                                                                                          name: "borrower";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "nftCollateralTokenId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "nftCollateralAddress";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAddress";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "duration";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "source";
                                                                                                                          internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                          type: "tuple[]";
                                                                                                                          components: readonly [{
                                                                                                                              name: "loanId";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "lender";
                                                                                                                              internalType: "address";
                                                                                                                              type: "address";
                                                                                                                          }, {
                                                                                                                              name: "principalAmount";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "accruedInterest";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "startTime";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "aprBps";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }];
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "borrowerSignature";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "repayLoan";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_delegate";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "revokeDelegate";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newDelegateRegistry";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "setDelegateRegistry";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newFlashActionContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "setFlashActionContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "__maxSources";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "setMaxSources";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "__minLockPeriod";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "setMinLockPeriod";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "setProtocolFee";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newMinimum";
                                                                                                                  internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "interest";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "updateImprovementMinimum";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newDuration";
                                                                                                                  internalType: "uint48";
                                                                                                                  type: "uint48";
                                                                                                              }];
                                                                                                              name: "updateLiquidationAuctionDuration";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanLiquidator";
                                                                                                                  internalType: "contract ILoanLiquidator";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "updateLiquidationContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newProtocolFee";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "updateProtocolFee";
                                                                                                              outputs: readonly [];
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v5.ts:4907
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable multiSourceLoanABIConst

                                                                                                          multiSourceLoanABI: readonly [{
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanLiquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "protocolFee";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "maxSources";
                                                                                                                  internalType: "uint8";
                                                                                                                  type: "uint8";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AddressZeroError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "CancelledOrExecutedOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "CancelledRenegotiationOffer";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "CancelledRenegotiationOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CannotLiquidateError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ExpiredLoanError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ExpiredOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ExpiredRenegotiationOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidBorrowerError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCallbackError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCollateralIdError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidLiquidationError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidLoanError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_fraction";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidProtocolFeeError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidRenegotiationOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidSignatureError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidSignerError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LengthMismatchError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_liquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "LiquidatorOnlyError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LoanExpiredError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LoanNotDueError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LoanNotFoundError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_newMinOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LowOfferIdError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_newMinRenegotiationOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LowRenegotiationOfferIdError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MaxCapacityExceededError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "NotMintedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NotStrictlyImprovedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "OnlyBorrowerCallableError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "OnlyLenderOrSignerCallableError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "PartialOfferCannotChangeDurationError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "PartialOfferCannotHaveFeeError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "RefinanceFullError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "RepaymentError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "sourcePrincipal";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "loanPrincipal";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "TargetPrincipalTooLowError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_pendingProtocolFeeSetTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "TooEarlyError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "sources";
                                                                                                                  internalType: "uint8";
                                                                                                                  type: "uint8";
                                                                                                              }];
                                                                                                              name: "TooManySourcesError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "Unauthorized";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_authorized";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "UnauthorizedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ZeroAddressError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ZeroDurationError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ZeroInterestError";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AllOffersCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "minRenegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AllRenegotiationOffersCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "signer";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ApprovedSigner";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "minimum";
                                                                                                                  internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "interest";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ImprovementMinimumUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newDuration";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LiquidationAuctionDurationUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "liquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LiquidationContractUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanEmitted";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanForeclosed";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "repayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanLiquidated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "oldLoanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "newLoanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanRefinanced";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "totalRepayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanRepaid";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "liquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanSentToLiquidator";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newMax";
                                                                                                                  internalType: "uint8";
                                                                                                                  type: "uint8";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "MaxSourcesUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "OfferCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "fee";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ProtocolFeePendingUpdate";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "fee";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ProtocolFeeUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "RenegotiationOfferCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "contract_added";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "WhitelistedCallbackContractAdded";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "contract_removed";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "WhitelistedCallbackContractRemoved";
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "DOMAIN_SEPARATOR";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "FEE_UPDATE_NOTICE";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MAX_PROTOCOL_FEE";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "addWhitelistedCallbackContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_signer";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "approveSigner";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelAllOffers";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_minRenegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelAllRenegotiationOffers";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelOffer";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_offerIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "cancelOffers";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelRenegotiationOffer";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_renegotiationIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "cancelRenegotiationOffers";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanOffer";
                                                                                                                  internalType: "struct IBaseLoan.LoanOffer";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "offerId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "capacity";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "signer";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "requiresLiquidation";
                                                                                                                      internalType: "bool";
                                                                                                                      type: "bool";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "aprBps";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "expirationTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "validators";
                                                                                                                      internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "validator";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "arguments";
                                                                                                                          internalType: "bytes";
                                                                                                                          type: "bytes";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_lenderOfferSignature";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }, {
                                                                                                                  name: "_withCallback";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "emitLoan";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "getApprovedSigner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getCollectionManager";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getCurrencyManager";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getImprovementMinimum";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "interest";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLiquidationAuctionDuration";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint48";
                                                                                                                  type: "uint48";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLiquidator";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getLoanHash";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getMaxSources";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint8";
                                                                                                                  type: "uint8";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanPrincipal";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getMinSourcePrincipal";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getPendingProtocolFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getPendingProtocolFeeSetTime";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getProtocolFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getTotalLoansIssued";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getUsedCapacity";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "isOfferCancelled";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "isRenegotiationOfferCancelled";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isWhitelistedCallbackContract";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "lenderMinOfferId";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "lenderMinRenegotiationOfferId";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "liquidateLoan";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_collateralAddress";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_collateralTokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_repayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "loanLiquidated";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationOffer";
                                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "renegotiationId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "signer";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "targetPrincipal";
                                                                                                                      internalType: "uint256[]";
                                                                                                                      type: "uint256[]";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "aprBps";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "expirationTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "strictImprovement";
                                                                                                                      internalType: "bool";
                                                                                                                      type: "bool";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "refinanceFull";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationOffer";
                                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "renegotiationId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "signer";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "targetPrincipal";
                                                                                                                      internalType: "uint256[]";
                                                                                                                      type: "uint256[]";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "aprBps";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "expirationTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "strictImprovement";
                                                                                                                      internalType: "bool";
                                                                                                                      type: "bool";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "refinancePartial";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationOffer";
                                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer[]";
                                                                                                                  type: "tuple[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "renegotiationId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "signer";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "targetPrincipal";
                                                                                                                      internalType: "uint256[]";
                                                                                                                      type: "uint256[]";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "aprBps";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "expirationTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "strictImprovement";
                                                                                                                      internalType: "bool";
                                                                                                                      type: "bool";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                                                  type: "tuple[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "refinancePartialBatch";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "loans";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                                                  type: "tuple[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "removeWhitelistedCallbackContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_collateralTo";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "source";
                                                                                                                      internalType: "struct IMultiSourceLoan.Source[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_withCallback";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "repayLoan";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "maxSources";
                                                                                                                  internalType: "uint8";
                                                                                                                  type: "uint8";
                                                                                                              }];
                                                                                                              name: "setMaxSources";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "setProtocolFee";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newMinimum";
                                                                                                                  internalType: "struct IBaseLoan.ImprovementMinimum";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "interest";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "updateImprovementMinimum";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newDuration";
                                                                                                                  internalType: "uint48";
                                                                                                                  type: "uint48";
                                                                                                              }];
                                                                                                              name: "updateLiquidationAuctionDuration";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanLiquidator";
                                                                                                                  internalType: "contract ILoanLiquidator";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "updateLiquidationContract";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newProtocolFee";
                                                                                                                  internalType: "struct IBaseLoan.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "updateProtocolFee";
                                                                                                              outputs: readonly [];
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v4.ts:2619
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable multiSourceLoanAbiConst

                                                                                                          multiSourceLoanAbi: readonly [{
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanLiquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "protocolFee";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "maxTranches";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "minLockPeriod";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "delegateRegistry";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "loanManagerRegistry";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "flashActionContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "minWaitTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AddressZeroError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "CancelledOrExecutedOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ECDSAInvalidSignature";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "length";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ECDSAInvalidSignatureLength";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "s";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                              name: "ECDSAInvalidSignatureS";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ExpiredOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidAddressesError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_principalAmount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidAmountError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCallbackError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCallerError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCollateralIdError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidDurationError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidInputError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "InvalidLoanError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidMethodError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidParametersError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidRenegotiationOfferError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidSignatureError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidTrancheError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_liquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "LiquidatorOnlyError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LoanExpiredError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LoanLockedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_expirationTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LoanNotDueError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_newMinOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LowOfferIdError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_newMinRenegotiationOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "LowRenegotiationOfferIdError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MaxCapacityExceededError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MismatchError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "i";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "returndata";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "MulticallFailed";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NFTNotReturnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "NotStrictlyImprovedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_pendingProtocolFeeSetTime";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "TooEarlyError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "TooManyTranchesError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "TooSoonError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "minTimestamp";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "TrancheCannotBeRefinancedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ZeroInterestError";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "AllOffersCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "delegate";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "_rights";
                                                                                                                  type: "bytes32";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "bytes32";
                                                                                                              }, {
                                                                                                                  name: "value";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "bool";
                                                                                                              }];
                                                                                                              name: "Delegated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newFlashActionContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "FlashActionContractUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "target";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "FlashActionExecuted";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newDuration";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LiquidationAuctionDurationUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "liquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LiquidationContractUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanEmitted";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanForeclosed";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanLiquidated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "oldLoanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "newLoanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanRefinanced";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "newLoanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "offerIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "totalFee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanRefinancedFromNewOffers";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "totalRepayment";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "fee";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanRepaid";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "liquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "LoanSentToLiquidator";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_minimum";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "MinAprImprovementUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newMinBid";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "MinBidLiquidationUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "minLockPeriod";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "MinLockPeriodUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "OfferCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "fee";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ProtocolFeePendingUpdate";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "fee";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ProtocolFeeUpdated";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "RenegotiationOfferCancelled";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "delegate";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "RevokeDelegate";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "TransferOwnerRequested";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "contractAdded";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "WhitelistedCallbackContractAdded";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "contractRemoved";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "WhitelistedCallbackContractRemoved";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "DOMAIN_SEPARATOR";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "FEE_UPDATE_NOTICE";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "INITIAL_DOMAIN_SEPARATOR";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MAX_AUCTION_DURATION";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint48";
                                                                                                                  type: "uint48";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MIN_AUCTION_DURATION";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint48";
                                                                                                                  type: "uint48";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MIN_BID_LIQUIDATION";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "MIN_WAIT_TIME";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "VERSION";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationOffer";
                                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "renegotiationId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "trancheIndex";
                                                                                                                      internalType: "uint256[]";
                                                                                                                      type: "uint256[]";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "aprBps";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "expirationTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "addNewTranche";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "addWhitelistedCallbackContract";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelAllOffers";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelOffer";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "cancelRenegotiationOffer";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_delegate";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_rights";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }, {
                                                                                                                  name: "_value";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "delegate";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanExecutionData";
                                                                                                                  internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "executionData";
                                                                                                                      internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                                                                      type: "tuple";
                                                                                                                      components: readonly [{
                                                                                                                          name: "offerExecution";
                                                                                                                          internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                                                                          type: "tuple[]";
                                                                                                                          components: readonly [{
                                                                                                                              name: "offer";
                                                                                                                              internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                                                              type: "tuple";
                                                                                                                              components: readonly [{
                                                                                                                                  name: "offerId";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "lender";
                                                                                                                                  internalType: "address";
                                                                                                                                  type: "address";
                                                                                                                              }, {
                                                                                                                                  name: "fee";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "capacity";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "nftCollateralAddress";
                                                                                                                                  internalType: "address";
                                                                                                                                  type: "address";
                                                                                                                              }, {
                                                                                                                                  name: "nftCollateralTokenId";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "principalAddress";
                                                                                                                                  internalType: "address";
                                                                                                                                  type: "address";
                                                                                                                              }, {
                                                                                                                                  name: "principalAmount";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "aprBps";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "expirationTime";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "duration";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "maxSeniorRepayment";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "validators";
                                                                                                                                  internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                                  type: "tuple[]";
                                                                                                                                  components: readonly [{
                                                                                                                                      name: "validator";
                                                                                                                                      internalType: "address";
                                                                                                                                      type: "address";
                                                                                                                                  }, {
                                                                                                                                      name: "arguments";
                                                                                                                                      internalType: "bytes";
                                                                                                                                      type: "bytes";
                                                                                                                                  }];
                                                                                                                              }];
                                                                                                                          }, {
                                                                                                                              name: "amount";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "lenderOfferSignature";
                                                                                                                              internalType: "bytes";
                                                                                                                              type: "bytes";
                                                                                                                          }];
                                                                                                                      }, {
                                                                                                                          name: "tokenId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "duration";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "expirationTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalReceiver";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "callbackData";
                                                                                                                          internalType: "bytes";
                                                                                                                          type: "bytes";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "borrowerOfferSignature";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "emitLoan";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_target";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "executeFlashAction";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getCollectionManager";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getCurrencyManager";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getDelegateRegistry";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getFlashActionContract";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLiquidationAuctionDuration";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint48";
                                                                                                                  type: "uint48";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLiquidator";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getLoanHash";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes32";
                                                                                                                  type: "bytes32";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getLoanManagerRegistry";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "contract ILoanManagerRegistry";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getMaxTranches";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getMinImprovementApr";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getMinLockPeriod";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getPendingProtocolFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getPendingProtocolFeeSetTime";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getProtocolFee";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "getTotalLoansIssued";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_lender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getUsedCapacity";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "offerId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "isOfferCancelled";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "notActive";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "renegotiationIf";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "isRenegotiationOfferCancelled";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "notActive";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isWhitelistedCallbackContract";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "liquidateLoan";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "loanLiquidated";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "minOfferId";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "minOfferId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes[]";
                                                                                                                  type: "bytes[]";
                                                                                                              }];
                                                                                                              name: "multicall";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "results";
                                                                                                                  internalType: "bytes[]";
                                                                                                                  type: "bytes[]";
                                                                                                              }];
                                                                                                              stateMutability: "payable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "pendingOwner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "pendingOwnerTime";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loanId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loanExecutionData";
                                                                                                                  internalType: "struct IMultiSourceLoan.LoanExecutionData";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "executionData";
                                                                                                                      internalType: "struct IMultiSourceLoan.ExecutionData";
                                                                                                                      type: "tuple";
                                                                                                                      components: readonly [{
                                                                                                                          name: "offerExecution";
                                                                                                                          internalType: "struct IMultiSourceLoan.OfferExecution[]";
                                                                                                                          type: "tuple[]";
                                                                                                                          components: readonly [{
                                                                                                                              name: "offer";
                                                                                                                              internalType: "struct IMultiSourceLoan.LoanOffer";
                                                                                                                              type: "tuple";
                                                                                                                              components: readonly [{
                                                                                                                                  name: "offerId";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "lender";
                                                                                                                                  internalType: "address";
                                                                                                                                  type: "address";
                                                                                                                              }, {
                                                                                                                                  name: "fee";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "capacity";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "nftCollateralAddress";
                                                                                                                                  internalType: "address";
                                                                                                                                  type: "address";
                                                                                                                              }, {
                                                                                                                                  name: "nftCollateralTokenId";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "principalAddress";
                                                                                                                                  internalType: "address";
                                                                                                                                  type: "address";
                                                                                                                              }, {
                                                                                                                                  name: "principalAmount";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "aprBps";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "expirationTime";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "duration";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "maxSeniorRepayment";
                                                                                                                                  internalType: "uint256";
                                                                                                                                  type: "uint256";
                                                                                                                              }, {
                                                                                                                                  name: "validators";
                                                                                                                                  internalType: "struct IBaseLoan.OfferValidator[]";
                                                                                                                                  type: "tuple[]";
                                                                                                                                  components: readonly [{
                                                                                                                                      name: "validator";
                                                                                                                                      internalType: "address";
                                                                                                                                      type: "address";
                                                                                                                                  }, {
                                                                                                                                      name: "arguments";
                                                                                                                                      internalType: "bytes";
                                                                                                                                      type: "bytes";
                                                                                                                                  }];
                                                                                                                              }];
                                                                                                                          }, {
                                                                                                                              name: "amount";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "lenderOfferSignature";
                                                                                                                              internalType: "bytes";
                                                                                                                              type: "bytes";
                                                                                                                          }];
                                                                                                                      }, {
                                                                                                                          name: "tokenId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "duration";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "expirationTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalReceiver";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "callbackData";
                                                                                                                          internalType: "bytes";
                                                                                                                          type: "bytes";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "borrowerOfferSignature";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "refinanceFromLoanExecutionData";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationOffer";
                                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "renegotiationId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "trancheIndex";
                                                                                                                      internalType: "uint256[]";
                                                                                                                      type: "uint256[]";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "aprBps";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "expirationTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_renegotiationOfferSignature";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "refinanceFull";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_renegotiationOffer";
                                                                                                                  internalType: "struct IMultiSourceLoan.RenegotiationOffer";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "renegotiationId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "loanId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "lender";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "trancheIndex";
                                                                                                                      internalType: "uint256[]";
                                                                                                                      type: "uint256[]";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "aprBps";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "expirationTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_loan";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "refinancePartial";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      type: "tuple[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_contract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "removeWhitelistedCallbackContract";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_repaymentData";
                                                                                                                  internalType: "struct IMultiSourceLoan.LoanRepaymentData";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "data";
                                                                                                                      internalType: "struct IMultiSourceLoan.SignableRepaymentData";
                                                                                                                      type: "tuple";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "callbackData";
                                                                                                                          internalType: "bytes";
                                                                                                                          type: "bytes";
                                                                                                                      }, {
                                                                                                                          name: "shouldDelegate";
                                                                                                                          internalType: "bool";
                                                                                                                          type: "bool";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "loan";
                                                                                                                      internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                      type: "tuple";
                                                                                                                      components: readonly [{
                                                                                                                          name: "borrower";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "nftCollateralTokenId";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "nftCollateralAddress";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAddress";
                                                                                                                          internalType: "address";
                                                                                                                          type: "address";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "duration";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "tranche";
                                                                                                                          internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                          type: "tuple[]";
                                                                                                                          components: readonly [{
                                                                                                                              name: "loanId";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "floor";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "principalAmount";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "lender";
                                                                                                                              internalType: "address";
                                                                                                                              type: "address";
                                                                                                                          }, {
                                                                                                                              name: "accruedInterest";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "startTime";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }, {
                                                                                                                              name: "aprBps";
                                                                                                                              internalType: "uint256";
                                                                                                                              type: "uint256";
                                                                                                                          }];
                                                                                                                      }, {
                                                                                                                          name: "protocolFee";
                                                                                                                          internalType: "uint256";
                                                                                                                          type: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "borrowerSignature";
                                                                                                                      internalType: "bytes";
                                                                                                                      type: "bytes";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "repayLoan";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "requestTransferOwner";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_delegate";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "revokeDelegate";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newFlashActionContract";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "setFlashActionContract";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "__minLockPeriod";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "setMinLockPeriod";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "setProtocolFee";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newDuration";
                                                                                                                  internalType: "uint48";
                                                                                                                  type: "uint48";
                                                                                                              }];
                                                                                                              name: "updateLiquidationAuctionDuration";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "__loanLiquidator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "updateLiquidationContract";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newMinimum";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "updateMinImprovementApr";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newProtocolFee";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      internalType: "address";
                                                                                                                      type: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      internalType: "uint256";
                                                                                                                      type: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              name: "updateProtocolFee";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v6.ts:7607
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable oldErc721WrapperAbiConst

                                                                                                          oldErc721WrapperAbi: readonly [{
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "name";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }, {
                                                                                                                  name: "symbol";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }, {
                                                                                                                  name: "_wrapped";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "approve";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "balanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getApproved";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isApprovedForAll";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ownerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "setApprovalForAll";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "stashAddress";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "stashFactory";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "contract Stash";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "interfaceId";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              name: "supportsInterface";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "symbol";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "tokenURI";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "tokensOfOwner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "totalSupply";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "transferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "unwrap";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "tokenIndexes";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "unwrapBatch";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "wrap";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "tokenIndexes";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "wrapBatch";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "wrapped";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "contract IOldERC721";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Approval";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ApprovalForAll";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Transfer";
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/oldERC721Wrapper.ts:1
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable purchaseBundlerAbiConst

                                                                                                          purchaseBundlerAbi: readonly [{
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_multiSourceLoanAddress";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "_marketplaceContracts";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "_wethAddress";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address payable";
                                                                                                              }, {
                                                                                                                  name: "_punkMarketAddress";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address payable";
                                                                                                              }, {
                                                                                                                  name: "_wrappedPunkAddress";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address payable";
                                                                                                              }, {
                                                                                                                  name: "__taxes";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct IPurchaseBundler.Taxes";
                                                                                                                  components: readonly [{
                                                                                                                      name: "buyTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }, {
                                                                                                                      name: "sellTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_minWaitTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "__protocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "fallback";
                                                                                                              stateMutability: "payable";
                                                                                                          }, {
                                                                                                              type: "receive";
                                                                                                              stateMutability: "payable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "FEE_UPDATE_NOTICE";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "MIN_WAIT_TIME";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "TAX_UPDATE_NOTICE";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "afterNFTTransfer";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loan";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      type: "tuple[]";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          type: "address";
                                                                                                                          internalType: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_executionData";
                                                                                                                  type: "bytes";
                                                                                                                  internalType: "bytes";
                                                                                                              }];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "bytes4";
                                                                                                                  internalType: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "afterPrincipalTransfer";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_loan";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      type: "tuple[]";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          type: "address";
                                                                                                                          internalType: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }];
                                                                                                              }, {
                                                                                                                  name: "_fee";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_executionData";
                                                                                                                  type: "bytes";
                                                                                                                  internalType: "bytes";
                                                                                                              }];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "bytes4";
                                                                                                                  internalType: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "buy";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_executionData";
                                                                                                                  type: "bytes[]";
                                                                                                                  internalType: "bytes[]";
                                                                                                              }];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "uint256[]";
                                                                                                                  internalType: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  type: "tuple[]";
                                                                                                                  internalType: "struct IMultiSourceLoan.Loan[]";
                                                                                                                  components: readonly [{
                                                                                                                      name: "borrower";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralTokenId";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "nftCollateralAddress";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAddress";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "principalAmount";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "startTime";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "duration";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }, {
                                                                                                                      name: "tranche";
                                                                                                                      type: "tuple[]";
                                                                                                                      internalType: "struct IMultiSourceLoan.Tranche[]";
                                                                                                                      components: readonly [{
                                                                                                                          name: "loanId";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "floor";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "principalAmount";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "lender";
                                                                                                                          type: "address";
                                                                                                                          internalType: "address";
                                                                                                                      }, {
                                                                                                                          name: "accruedInterest";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "startTime";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }, {
                                                                                                                          name: "aprBps";
                                                                                                                          type: "uint256";
                                                                                                                          internalType: "uint256";
                                                                                                                      }];
                                                                                                                  }, {
                                                                                                                      name: "protocolFee";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "payable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "executeSell";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_currencies";
                                                                                                                  type: "address[]";
                                                                                                                  internalType: "contract ERC20[]";
                                                                                                              }, {
                                                                                                                  name: "_currencyAmounts";
                                                                                                                  type: "uint256[]";
                                                                                                                  internalType: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  type: "address[]";
                                                                                                                  internalType: "contract ERC721[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  type: "uint256[]";
                                                                                                                  internalType: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_marketPlace";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "_executionData";
                                                                                                                  type: "bytes[]";
                                                                                                                  internalType: "bytes[]";
                                                                                                              }];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "finalUpdateMultiSourceLoanAddress";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newAddress";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "getMultiSourceLoanAddress";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "getPendingProtocolFee";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "getPendingProtocolFeeSetTime";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "getPendingTaxes";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct IPurchaseBundler.Taxes";
                                                                                                                  components: readonly [{
                                                                                                                      name: "buyTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }, {
                                                                                                                      name: "sellTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "getPendingTaxesSetTime";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "getProtocolFee";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "getTaxes";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct IPurchaseBundler.Taxes";
                                                                                                                  components: readonly [{
                                                                                                                      name: "buyTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }, {
                                                                                                                      name: "sellTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "onERC721Received";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  type: "bytes";
                                                                                                                  internalType: "bytes";
                                                                                                              }];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "bytes4";
                                                                                                                  internalType: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "owner";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "pendingOwner";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "pendingOwnerTime";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "requestTransferOwner";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newOwner";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "sell";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_executionData";
                                                                                                                  type: "bytes[]";
                                                                                                                  internalType: "bytes[]";
                                                                                                              }];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "setProtocolFee";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "setTaxes";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "transferOwnership";
                                                                                                              inputs: readonly [];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "transferOwnership";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "updateMultiSourceLoanAddressFirst";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newAddress";
                                                                                                                  type: "address";
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "updateProtocolFee";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newProtocolFee";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              name: "updateTaxes";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_newTaxes";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct IPurchaseBundler.Taxes";
                                                                                                                  components: readonly [{
                                                                                                                      name: "buyTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }, {
                                                                                                                      name: "sellTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "BNPLLoansStarted";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanIds";
                                                                                                                  type: "uint256[]";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "uint256[]";
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "MultiSourceLoanPendingUpdate";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newAddress";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "MultiSourceLoanUpdated";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newAddress";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "OwnershipTransferred";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                                  internalType: "address";
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "ProtocolFeePendingUpdate";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "fee";
                                                                                                                  type: "tuple";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "ProtocolFeeUpdated";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "fee";
                                                                                                                  type: "tuple";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "struct WithProtocolFee.ProtocolFee";
                                                                                                                  components: readonly [{
                                                                                                                      name: "recipient";
                                                                                                                      type: "address";
                                                                                                                      internalType: "address";
                                                                                                                  }, {
                                                                                                                      name: "fraction";
                                                                                                                      type: "uint256";
                                                                                                                      internalType: "uint256";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "SellAndRepayExecuted";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "loanIds";
                                                                                                                  type: "uint256[]";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "uint256[]";
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "TaxesPendingUpdate";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newTaxes";
                                                                                                                  type: "tuple";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "struct IPurchaseBundler.Taxes";
                                                                                                                  components: readonly [{
                                                                                                                      name: "buyTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }, {
                                                                                                                      name: "sellTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "TaxesUpdated";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "taxes";
                                                                                                                  type: "tuple";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "struct IPurchaseBundler.Taxes";
                                                                                                                  components: readonly [{
                                                                                                                      name: "buyTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }, {
                                                                                                                      name: "sellTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }];
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              name: "TransferOwnerRequested";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                                  internalType: "address";
                                                                                                              }];
                                                                                                              anonymous: false;
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "AddressZeroError";
                                                                                                              inputs: readonly [];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "CouldNotReturnEthError";
                                                                                                              inputs: readonly [];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "InvalidAddressUpdateError";
                                                                                                              inputs: readonly [];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "InvalidCallbackError";
                                                                                                              inputs: readonly [];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "InvalidInputError";
                                                                                                              inputs: readonly [];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "InvalidTaxesError";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newTaxes";
                                                                                                                  type: "tuple";
                                                                                                                  internalType: "struct IPurchaseBundler.Taxes";
                                                                                                                  components: readonly [{
                                                                                                                      name: "buyTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }, {
                                                                                                                      name: "sellTax";
                                                                                                                      type: "uint128";
                                                                                                                      internalType: "uint128";
                                                                                                                  }];
                                                                                                              }];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "MarketplaceAddressNotWhitelisted";
                                                                                                              inputs: readonly [];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "OnlyLoanCallableError";
                                                                                                              inputs: readonly [];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "OnlyWethSupportedError";
                                                                                                              inputs: readonly [];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "TooEarlyError";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_pendingProtocolFeeSetTime";
                                                                                                                  type: "uint256";
                                                                                                                  internalType: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              name: "TooSoonError";
                                                                                                              inputs: readonly [];
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v6.ts:9447
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable userVaultABIConst

                                                                                                          userVaultABI: readonly [{
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AssetNotOwnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LengthMismatchError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "NotApprovedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "VaultNotExistsError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WithdrawingETHError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WrongMethodError";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Approval";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ApprovalForAll";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Transfer";
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "ERC20BalanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ERC721OwnerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ETH";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "approve";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "balanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_assetRecipient";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "burn";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                              name: "burnAndWithdraw";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC20";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC721";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "depositERC721s";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "payable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositEth";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getApproved";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isApprovedForAll";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "mint";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ownerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "setApprovalForAll";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "interfaceId";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              name: "supportsInterface";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "view";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "symbol";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "pure";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "tokenURI";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "transferFrom";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "withdrawERC20";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC20s";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawERC721";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC721s";
                                                                                                              outputs: readonly [];
                                                                                                          }, {
                                                                                                              stateMutability: "nonpayable";
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawEth";
                                                                                                              outputs: readonly [];
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v5.ts:8314
                                                                                                        • @@ -18,7 +18,7 @@

                                                                                                          Variable userVaultAbiConst

                                                                                                          userVaultAbi: readonly [{
                                                                                                              type: "constructor";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "currencyManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "collectionManager";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ERC1155BalanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "ERC20BalanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ERC721OwnerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "ETH";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "approve";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "balanceOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_assetRecipient";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "burn";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_erc1155Tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_erc1155TokensIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "burnAndWithdraw";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC1155";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "_amounts";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "depositERC1155s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC20";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositERC721";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "depositERC721s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "depositEth";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "payable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "getApproved";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "isApprovedForAll";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "mint";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "name";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC1155BatchReceived";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC1155Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "onERC721Received";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "owner";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "ownerOf";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "data";
                                                                                                                  internalType: "bytes";
                                                                                                                  type: "bytes";
                                                                                                              }];
                                                                                                              name: "safeTransferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              name: "setApprovalForAll";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "interfaceId";
                                                                                                                  internalType: "bytes4";
                                                                                                                  type: "bytes4";
                                                                                                              }];
                                                                                                              name: "supportsInterface";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [];
                                                                                                              name: "symbol";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "view";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "tokenURI";
                                                                                                              outputs: readonly [{
                                                                                                                  name: "";
                                                                                                                  internalType: "string";
                                                                                                                  type: "string";
                                                                                                              }];
                                                                                                              stateMutability: "pure";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "transferFrom";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "transferOwnership";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawERC1155";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC1155s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }];
                                                                                                              name: "withdrawERC20";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_tokens";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC20s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                              }, {
                                                                                                                  name: "_tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawERC721";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }, {
                                                                                                                  name: "_collections";
                                                                                                                  internalType: "address[]";
                                                                                                                  type: "address[]";
                                                                                                              }, {
                                                                                                                  name: "_tokenIds";
                                                                                                                  internalType: "uint256[]";
                                                                                                                  type: "uint256[]";
                                                                                                              }];
                                                                                                              name: "withdrawERC721s";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "function";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "_vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "withdrawEth";
                                                                                                              outputs: readonly [];
                                                                                                              stateMutability: "nonpayable";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "spender";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Approval";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "owner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "operator";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "approved";
                                                                                                                  internalType: "bool";
                                                                                                                  type: "bool";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ApprovalForAll";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC1155Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC1155Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "token";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "amount";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC20Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Deposited";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "collection";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: false;
                                                                                                              }, {
                                                                                                                  name: "tokenId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: false;
                                                                                                              }];
                                                                                                              name: "ERC721Withdrawn";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "user";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "newOwner";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "OwnershipTransferred";
                                                                                                          }, {
                                                                                                              type: "event";
                                                                                                              anonymous: false;
                                                                                                              inputs: readonly [{
                                                                                                                  name: "from";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "to";
                                                                                                                  internalType: "address";
                                                                                                                  type: "address";
                                                                                                                  indexed: true;
                                                                                                              }, {
                                                                                                                  name: "id";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                                  indexed: true;
                                                                                                              }];
                                                                                                              name: "Transfer";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "AssetNotOwnedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CollectionNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "CurrencyNotWhitelistedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "InvalidCallerError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "LengthMismatchError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [{
                                                                                                                  name: "vaultId";
                                                                                                                  internalType: "uint256";
                                                                                                                  type: "uint256";
                                                                                                              }];
                                                                                                              name: "NotApprovedError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "VaultNotExistsError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WithdrawingETHError";
                                                                                                          }, {
                                                                                                              type: "error";
                                                                                                              inputs: readonly [];
                                                                                                              name: "WrongMethodError";
                                                                                                          }] = ...
                                                                                                          +
                                                                                                        • Defined in src/generated/blockchain/v6.ts:12002
                                                                                                        • @@ -17,7 +17,7 @@

                                                                                                          Variable REJECTEDConst

                                                                                                          REJECTED: "rejected" = ...
                                                                                                          +
                                                                                                        • Defined in src/utils/promises.ts:2